Ниже приведен небольшой фрагмент кода, который иллюстрирует, как работает поставщик данных. Как избежать указания имени DataProvider перед каждым методом, который использует поставщик данных?Есть ли способ оптимизировать эту функцию, а не переписывать имя поставщика данных перед каждым методом, который его использует?
package TestNG;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
public class DemoTestNG {
static WebDriver driver ;
@BeforeTest
public void browserLauncher() {
System.getProperty("webdriver.gecko.driver", "C:\\geckodriver.exe");
driver = new FirefoxDriver();
driver.get("https://www.facebook.com");
}
@DataProvider(name = "TestData")
public Object[][] getData() {
Object[][] data = new Object[3][2];
data[0][0]= "username1";
data[0][1]= "password1";
data[1][0]= "username2";
data[1][1]= "password2";
data[2][0]= "username3";
data[2][1]= "password3";
return data;
}
@Test(dataProvider="TestData")
public void Dp_Test(String username, String pass) {
driver.findElement(By.id("email")).clear();
driver.findElement(By.id("email")).sendKeys(username);
driver.findElement(By.id("pass")).clear();
driver.findElement(By.id("pass")).sendKeys(pass);
driver.findElement(By.id("u_0_2")).click();
}
}