1
我有幾十個Selenium Webdriver測試。我想一次運行它們。如何運行測試,以便每個測試都不會打開新的Webdriver瀏覽器窗口?在同一窗口中打開硒Webdriver測試
我有幾十個Selenium Webdriver測試。我想一次運行它們。如何運行測試,以便每個測試都不會打開新的Webdriver瀏覽器窗口?在同一窗口中打開硒Webdriver測試
你必須在@ BeforeClass/@ AfterClass中啓動/拆卸你的webdriver,並在你所有的測試中使用這個webdriver。
public class MyTest {
WebDriver driver;
@BeforeClass
public static void setUpClass() {
driver = new RemoteWebDriver(new URL(hubAddress), capability);
}
@AfterClass
public static void setDownClass() {
driver.quit();
}
@Test
public void Test1(){
driver.get(...);
}
@Test
public void Test2(){
driver.get(...):
}
}
或使其在TestSuite的靜態的,具有相同@ BeforeClass/@課餘:
@RunWith(Suite.class)
@SuiteClasses({ Test1.class, Test2.class})
public class MyTestSuite {
public static WebDriver driver;
@BeforeClass
public static void setUpClass() {
driver = new RemoteWebDriver(new URL(hubAddress), capability);
}
@AfterClass
public static void setDownClass() {
driver.quit();
}
}
和
public class Test1 {
@Test
public void Test1(){
MyTestSuite.driver.get(...);
}
}
這是否工作,當你有@在試驗方法不同的java類?他們必須是,因爲有這麼多的測試。 – mjgirl
是的,請參閱我的編輯 –
但是您必須列出@SuiteClasses anotation中的所有類?沒有辦法只包含測試包中的所有類? – mjgirl