中文网站排行榜,免费软件定位对方手机位置,制作类网站,wordpress登入后台在用selenium做自动化测试时#xff0c;由于各种不明原因#xff0c;有时Chrome浏览器会出现假死的情况#xff0c;也就是整个浏览器响应超时#xff0c;本人脚本主要部署在Windows机器上#xff0c;所以主要以Windows为主#xff0c;浏览器为Chrome,即如下图所示 或者由… 在用selenium做自动化测试时由于各种不明原因有时Chrome浏览器会出现假死的情况也就是整个浏览器响应超时本人脚本主要部署在Windows机器上所以主要以Windows为主浏览器为Chrome,即如下图所示 或者由于被测页面弹出alert弹框程序没有做此处理导致程序响应超时浏览器无法关闭当用jenkins上再次执行job时就会报错即 如果出现这种问题怎么处理呢很简单直接去任务管理器关闭chromedriver.exe这个进程即可以及chrome.exe当然如果你办公方便可以手动去关但是万一你不在公司或者无法即时处理时怎么办呢 不多说直接上代码 1 import java.io.ByteArrayOutputStream;2 import java.io.IOException;3 import java.io.InputStream;4 import java.util.Properties;5 6 /**7 * 检测chrome和chromedriver进程8 * 9 * author 作者:jinzy
10 * version 创建时间2018年1月10日 下午2:59:32 类说明:
11 */
12 public class CloseProcess {
13
14 public static void main(String[] args) {
15 // TODO Auto-generated method stub
16 findProcess(chrome.exe);
17 findProcess(chromedriver.exe);
18 }
19
20 /**
21 * 检测程序。
22 *
23 * param processName
24 * 线程的名字请使用准确的名字
25 * return 找到返回true,没找到返回false
26 */
27 public static boolean findProcess(String processName) {
28 boolean flag false;
29 Properties props System.getProperties();
30 try {
31 if (props.getProperty(os.name).contains(Windows)) {
32 Process p Runtime.getRuntime().exec(cmd /c tasklist );
33 ByteArrayOutputStream baos new ByteArrayOutputStream();
34 InputStream os p.getInputStream();
35 byte b[] new byte[256];
36 while (os.read(b) 0) {
37 baos.write(b);
38 }
39 String s baos.toString();
40 if (s.indexOf(processName) 0) {
41 Runtime.getRuntime().exec(taskkill /im processName /f);
42 flag true;
43 } else {
44 flag false;
45 }
46 }else {
47 Process p Runtime.getRuntime().exec(new String[]{sh,-c,ps -ef | grep processName});
48 ByteArrayOutputStream baos new ByteArrayOutputStream();
49 InputStream os p.getInputStream();
50 byte b[] new byte[256];
51 while (os.read(b) 0) {
52 baos.write(b);
53 }
54 String s baos.toString();
55 if (s.indexOf(processName) 0) {
56 String[] cmd {sh,-c,killall -9 processName};
57 Runtime.getRuntime().exec(cmd);
58 flag true;
59 } else {
60 flag false;
61 }
62 }
63 } catch (IOException ioe) {
64 }
65 return flag;
66 }
67 } 可以将此代码放到项目中或者直接打包成jar包配置在jenkins中使用jenkins中配置如下 转载于:https://www.cnblogs.com/mrjade/p/8289034.html