我有几十个 Selenium Webdriver 测试。我想一次运行它们。如何运行测试以使每个测试都不会打开新的 Webdriver 浏览器窗口?
问问题
3696 次
1 回答
3
您必须在 @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/@AfterClass 使其成为静态:
@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(...);
}
}
于 2012-10-11T07:21:52.430 回答