请教webdriver @test前关闭所有浏览器的方法
如使用webdriver启动firefox前,要关闭所有的firefox。写在@Before里面,请问怎么写?@Before
public void setUp() throws Exception {
System.setProperty("webdriver.firefox.bin", "D:/Program Files/Mozilla firefox/firefox.exe");
driver = new FirefoxDriver();
baseUrl = "https://www.baidu.com/";
……
@Test
……
你要关闭所有已经开的Firefox的话要用关闭进程的方法,这个不用selenium去做,如果你的每个浏览器都是selenium打开的你可以用driver.close()方法在每个测试运行完就关掉,这样就不会积累很多的firefox进程了。。。。
public static boolean isProcessRunging(String serviceName) throws Exception {
Process p = Runtime.getRuntime().exec(TASKLIST);
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
if (line.toUpperCase().contains(serviceName.toUpperCase())) {
return true;
}
}
return false;
}
public static void killProcess(String serviceName) {
try {
while (isProcessRunging(serviceName)) {
Runtime.getRuntime().exec(KILL + serviceName.toUpperCase());
}
} catch (Exception e) {
e.printStackTrace();
}
}
页:
[1]