我试图配置集成以运行portractor测试。
我正在使用grunt-protractor-runner任务
具有以下配置:
protractor: {
options: {
configFile: "protractor.conf.js", //your protractor config file
keepAlive: true, // If false, the grunt process stops when the test fails.
noColor: false, // If true, protractor will not use colors in its output.
args: {
// Arguments passed to the command
}
},
run: {},
chrome: {
options: {
args: {
browser: "chrome"
}
}
}
}
这是我用来在服务器运行后运行量角器的艰巨任务:
grunt.registerTask('prot', [
'connect:test',
'replace:includemocks',//for uncommenting angular-mocks reference
'protractor:run',
'replace:removemocks',//for commenting out angular-mocks reference
]);
它在我的本地计算机上运行良好,但在代码处我遇到以下错误:
Error: Could not find chromedriver at /home/rof/src/bitbucket.org/myrepo/myFirstRepo/node_modules/grunt-protractor-runner/node_modules/protractor/selenium/chromedriver.exe
我猜,这是因为没有这个" chromedriver.exe"在这条路上。 如何在代码环境中解决它?
感谢前进
答案 0 :(得分:3)
将postinstall
添加到您的package.json文件中,npm install
将提前为您安排二进制文件:
"scripts": {
"postinstall": "echo -n $NODE_ENV | \
grep -v 'production' && \
./node_modules/protractor/bin/webdriver-manager update || \
echo 'will skip the webdriver install/update in production'",
...
},
并且不要忘记设置NODE_ENV
...根本不设置它会导致echo 'will skip the webdriver install/update in production'
块运行。将其设置为dev
或staging
将获得所需的结果。
答案 1 :(得分:2)
简短回答(pulkitsinghal给出了原始解决方案):
./node_modules/grunt-protractor-runner/node_modules/protractor/bin/webdriver-manager update
答案 2 :(得分:0)
我是Codeship的创始人之一。
错误似乎是因为您正在尝试使用exe文件,但我们在系统上使用Linux。您是否对该可执行文件进行了硬编码?
您是否可以向我们发送应用内支持请求,以便我们有一个链接可以帮助您解决此问题?