【发布时间】:2018-08-20 08:47:40
【问题描述】:
将不胜感激任何帮助!
- 我在windows上运行
- 我全局安装了 protractor 5.3.0 版
- 在更新 webdriver 之前我跑了:
webdriver-manager clean - 并更新版本如下:
webdriver-manager 更新 --ie32 --proxy http://my-proxy:8080 --ignore_ssl
- 节点版本 9.2.1
- npm 版本 5.7.1
- 在启动 e2e 之前启动了开发服务器..
我的 protractor.conf 文件如下:
const { SpecReporter } = require('jasmine-spec-reporter');
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./e2e/**/*.e2e-spec.ts'
],
capabilities: {
'browserName': 'chrome',
'proxyType': 'manual',
'httpProxy': 'http://my-proxy:8080'
},
directConnect: true,
baseUrl: 'http://localhost:4200/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
beforeLaunch: function() {
require('ts-node').register({
project: 'e2e/tsconfig.e2e.json'
});
},
onPrepare() {
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
}
};
尝试首先运行测试:ng e2e
第二作者:
ng e2e --config ./protractor.conf.js --specs ./e2e\app.e2e-spec.ts
仍然出现此代理错误:
events.js:136
throw er; // Unhandled 'error' event
^
Error: getaddrinfo ENOTFOUND chromedriver.storage.googleapis.com chromedriver.storage.googleapis.com:443
at errnoException (dns.js:55:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:97:26)
【问题讨论】:
-
如果web应用底层测试运行在本地,为什么需要设置代理。
-
我只是假设我需要由于错误(包含 443 ssl 端口)+ 我必须使用代理来更新驱动程序,正如我提到的那样,这确实有效,但运行 e2e 时使用:chromedriver.storage .googleapis.com:443,无论有没有代理,它最终都对我不起作用,我什至尝试明确指向硒驱动程序并添加了一个硒服务器,但效果不佳..不知道如何攻击,你能建议任何其他配置吗?
标签: angular proxy protractor angular-e2e