我正在使用angular为gitlab-ci管道设置e2e测试(量角器),实际上我是这个主题的新手。我也希望测试是无头的,因为Gitlab-ci所在的服务器正在Linux上运行。
但是我总是会收到这个错误:
E /启动器-未知错误:找不到Chrome二进制文件。
对我来说,这是没有意义的,因为它可以成功编译并下载,解压缩Chromedriver并获得1个正在运行的Webdriver实例,但随后由于提到的错误而崩溃。
我还要提到的是它在本地有效,但是当我推送它时,它无效。
我已经尝试过一些发现的事情,例如使用'--no-sandbox'编辑protractor.conf.js,但对我来说不起作用。
在这里您可以看到我的protractor.conf.js
const {SpecReporter} = require('jasmine-spec-reporter');
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./src/**/*.e2e-spec.ts'
],
capabilities: {
browserName: 'chrome', chromeOptions: {
args: [
'--headless',
'--disable-gpu',
'--window-size=800,600',
]
}
},
directConnect: true,
baseUrl: 'http://localhost:4200/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function () {
}
},
onPrepare() {
require('ts-node').register({
project: require('path').join(__dirname, './tsconfig.e2e.json')
});
jasmine.getEnv().addReporter(new SpecReporter({spec: {displayStacktrace: true}}));
}
};
我希望你们能帮助我解决我的问题,非常感谢您的回答。
通过在Linux服务器上安装chrome修复了它,没有找到其他解决方案
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句