Мой базовый код выглядит следующим образом: открытый класс RegressionTestSuite {
@BeforeSuite
public void setup() {
String sUrl = "http://csa-test:28280/sems_intranet";
System.setProperty("webdriver.ie.driver", "ie_driver/IEDriverServer.exe");
Configuration.browser = WebDriverRunner.INTERNET_EXPLORER;
open(sUrl);
}
@AfterSuite
public void closeBrowser(){
getWebDriver().close();
}
}
В моем тестовом примере это выглядит следующим образом:
Когда я используюgetWebDriver (). getWindowHandle (), он изменяется на firefox, и программа выполняет другие классы, но не выполняет этот класс.
открытый класс Profile_PasswordAwaressTestNGTests extends RegressionTestSuite {
@BeforeClass
public void navigateToPasswordAwareness() throws Exception {
//login and navigation to functionality
}
@Test (priority = 5)
public static void passwordWithoutAlphabet()throws Exception{
String newParentHandle = getWebDriver().getWindowHandle();
System.out.println("<<<TEST CASE 2>>>------Confirm that the system displays correct validation message password without alphabet characters (e.g. 12345$#67)------");
$(Selectors.byCssSelector("input[type='password'][name='password']")).setValue("12345$#67");
$(Selectors.byCssSelector("input[value='Test']")).click();
int i = 2;
int[] iWithoutAlphabetCharacters = newWindowNegative(newParentHandle, i);
switchTo().window(newParentHandle);
//switchTo().frame($(Selectors.byName("frmcontent")));
}
public static int[] newWindowNegative(String parentHandle, int i)throws Exception{
int iPassCount = 0;
int iFailCount = 0;
Set<String> handles = getWebDriver().getWindowHandles();
for(String handle: handles){
if (!handle.equals(parentHandle)){
switchTo().window(handle);
/*Test case execution*/
//i++;
$(Selectors.byCssSelector("input[value='Try again']")).click();
}
}
return new int[]{iPassCount, iFailCount};
}
}