java + selenium測試框架 (之進程強制關閉)

java + selenium測試框架 之進程強制關閉

在進行selenium測試時,可能會出現用例失敗,造成瀏覽器沒有關閉的情況。造成後面的用例無法正確的執行。

在這種情況下,可以採用強制殺掉進程的方式來關閉瀏覽器。當然,如果調用了其他程序,也可以採用該方法關閉。

殺掉進程 tskill,taskkill

tasklist 列出所有的進程和相應的信息;

tskill 殺進程,語法很簡單:tskill 進程名,或者 tskill PID ;

taskkill 用法複雜但是更強大,簡單的殺PID不如用tskill,比如它得寫成 taskkill -im 進程名.擴展名 ,或者 taskkill -pid PID

在windows下面提供了tskill命令:

    Runtime runTime = Runtime.getRuntime();

    //如果使用了ie瀏覽器和driver     
    runTime.exec("tskill iexplore");
    runTime.exec("tskill IEDriverServer");

    //chrome瀏覽器和driver
    runTime.exec("tskill chrome");
    runTime.exec("tskill chromedriver");

或者:

        runTime.exec("TASKKILL /F /IM iexplore.exe");
        runTime.exec("TASKKILL /F /IM IEDriverServer.exe");

linux下面 killall

kill – send a signal to a process

kill就是給某個進程id發送了一個信號。默認發送的信號是SIGTERM,而kill -9發送的信號是SIGKILL,即exit。exit信號不會被系統阻塞,所以kill -9能順利殺掉進程。

killall – kill processes by name

即,通過指定進程名的方式殺死進程。

    Runtime runTime = Runtime.getRuntime();

    runTime.exec("killall -9 chrome");
    runTime.exec("killall -9 chromedriver");
發佈了85 篇原創文章 · 獲贊 44 · 訪問量 38萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章