BrowserStackLocal.exe从Java执行时创建2个进程
我正在运行本地BrowerStack测试,为此我必须实例化与本地服务器和BrowserStack的连接。可找到此类测试的说明 我试图将进程声明为一个变量BrowserStackLocal.exe从Java执行时创建2个进程,java,selenium,process,automation,browserstack,Java,Selenium,Process,Automation,Browserstack,我正在运行本地BrowerStack测试,为此我必须实例化与本地服务器和BrowserStack的连接。可找到此类测试的说明 我试图将进程声明为一个变量 Process serverConnection = new ProcessBuilder("C:\\Users\\folder\\BrowserStackLocal.exe","**Password**", serverURL + ",80").start(); 查看任务管理器,我看到这一行创建了两个BrowserStackLocal.ex
Process serverConnection = new ProcessBuilder("C:\\Users\\folder\\BrowserStackLocal.exe","**Password**", serverURL + ",80").start();
查看任务管理器,我看到这一行创建了两个BrowserStackLocal.exe进程,我认为这是由于它们如何管理登录。有没有办法引用第二个BrowserStackLocal.exe进程
在我的清理工作中,我打电话给
serverConnection.destroy();
但这只结束了其中一个过程。现在我也打电话
Runtime.getRuntime().exec("taskkill /F /IM BrowserStackLocal.exe");
它成功地结束了另一个实例,但我更希望保留一个引用并调用.destroy
任何关于如何实现这一目标的建议都将不胜感激
编辑:我几乎可以肯定这两个过程的原因是登录功能,因为当我调用错误的密码时,只会打开一个窗口。第二个进程似乎是根据其CPU使用率进行所有计算的进程
编辑2:使用BrowserStackLocal进行的进一步测试确认登录过程创建了一个额外的过程。解决方案可以确定从第一个流程跟踪第二个流程实例化的方法
编辑3:这些过程似乎是链接的,因为当我从任务管理器中退出其中一个过程时,有时另一个过程会自动关闭。结果表明,BrowserStack就是这样处理登录过程的,这是不可避免的