我正在使用TestNG。我已经设置了DataProvider并且控件正在跳过DataProvider。以下是我遵循的步骤
包“testCase”,类“Login_ATC01”,静态方法“login_FR()”。
@Test
public static void Login_FR()
{
CommonModules.fn_setUpEnv();
Login.fn_SignUp();
}
此类导入了包含类CommonModules和Login
的包包自动化
public class Login {
@Test
public static void fn_SignUp()
{
String sUserName = "";
String sPassword = "";
//Authentication();
fn_mainLogin(sUserName,sPassword);
}
@Test(dataProvider="Authentication")
public static void fn_mainLogin(String sUserName, String sPassword)
{
if(Login_Objects.txtbx_Email().isDisplayed())
{
Login_Objects.txtbx_Email().sendKeys(sUserName);
Login_Objects.txtbx_Password().sendKeys(sPassword);
Login_Objects.txtbx_Password().submit();
}
}
@DataProvider(name="Authentication")
public static Object[][] Authenticate() throws Exception
{
// Setting up the Test Data Excel file
ExcelUtils.setExcelFile("/Users/abc/workspace/Test_Auto/src/testData/TestData.xlsx","Sheet1");
..
..
Object[][] testObjArray = ExcelUtils.getTableArray("/Users/abc/workspace/Test_Auto/src/testData/TestData.xlsx","Sheet1",iTestCaseRow);
return (testObjArray);
}
}
类登录具有dataProvider“Authentication”,应该在方法fn_mainLogin上调用@Test。当从fn_SignUp调用fn_mainLogin时,不会调用dataProvider“Authentication”。在调试时,控件不会传输到dataProvider,用户名和密码字段为空。