我在 Windows 10 上运行了一些 Protractor 测试。每次我启动测试时,都会有一个新的 chromedriver
开始了,但它永远不会消失并继续堆积在任务管理器中。为什么?我应该向谁提交错误?网络驱动程序、 Protractor 还是 Selenium ?
即使配置/测试为空,也会发生这种情况
只有 conf
我有
exports.config = {
framework: "jasmine",
plugins: [],
jasmineNodeOpts: {
defaultTimeoutInterval: 120000
},
beforeLaunch: function() {
},
onPrepare: function() {
},
afterLaunch: function(exitCode) {
},
capabilities: {
"browserName": "chrome"
},
suites: {
example: "spec.js",
}
}
和
spec.js
本质上是一个空测试使用
"test": "protractor tests/conf.js"
调用通过 npm 在 package.json 里面
最佳答案
我创建了一个 bat 文件,其中包含杀死 chromedriver 的命令,如下所示。
@echo off
taskkill /f /t /im chromedriver_2.38.exe
exit
在 protractor.config.js 中,我使用了 beforeLaunch() 方法,并且在每次执行中,它都会验证是否有一些 chromedriver 实例化,并且我只能使用一个实例。
为了执行 bat 文件,我使用了 child_process。 https://nodejs.org/api/child_process.html#
protractor.config 上的代码如下:
const { exec } = require('child_process');
beforeLaunch() {
exec('endchromedriver.bat');
}
关于selenium - Protractor 留下了 chromedriver.exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46965756/