Javascript 浏览器堆栈&x2B;Nightwatch.js如何设置受密码保护的代理(错误:httpProxy的格式不是host[:port]
BrowserStack+Nightwatch.js如何设置受密码保护的代理Javascript 浏览器堆栈&x2B;Nightwatch.js如何设置受密码保护的代理(错误:httpProxy的格式不是host[:port],javascript,proxy,nightwatch.js,browserstack,Javascript,Proxy,Nightwatch.js,Browserstack,BrowserStack+Nightwatch.js如何设置受密码保护的代理 common_capabilities: { 'browserstack.user': 'user', 'browserstack.key': 'key', 'browserstack.debug': true, }, test_settings: { default: { desiredCapabilities: { 'os': 'OS X'
common_capabilities: {
'browserstack.user': 'user',
'browserstack.key': 'key',
'browserstack.debug': true,
},
test_settings: {
default: {
desiredCapabilities: {
'os': 'OS X',
'os_version': 'Sierra',
'browser': 'Firefox',
'browser_version': '53.0',
'resolution': '1280x960',
"acceptSslCerts": 'false',
'proxy': {
'httpProxy': 'user:password@server:80',
'protocol': 'http',
'proxyType': 'manual',
//'httpProxy': 'server:80',
//'user': 'user',
//'pass': 'password'
}
},
我有错误:从selenium服务器检索新会话时出错
连接被拒绝!selenium服务器是否已启动 消息:“无法启动浏览器/仿真器
原因:httpProxy的格式不是host[:port]BrowserStack支持人员要求我根据设置的具体情况提供解决方案: 我不得不使用BrowserStack.local
"scripts": {
"test": "./bin/BrowserStackLocal --key ACCESS_KEY --local-proxy-host PROXY_HOST --local-proxy-port PROXY_PORT --local-proxy-user PROXY_USER --local-proxy-pass PROXY_PASS --local-identifier Test123 & ./node_modules/nightwatch/bin/nightwatch -c conf/local.conf.js tests",
"local": "./bin/BrowserStackLocal --key ACCESS_KEY --local-identifier Test123 && ./node_modules/nightwatch/bin/nightwatch -c conf/local.conf.js tests",
"nightwatch": "./node_modules/nightwatch/bin/nightwatch -c conf/local.conf.js tests"
},
第一步:通过代理启动BrowserStackLocal(在一个终端的窗口中
第二步:在“tests”文件夹中运行测试我找到了更好的解决方案,使用 并自定义local.runner.js:
#!/usr/bin/env node
process.env.NODE_ENV = 'testing';
const access = require('../conf/browserStackAccess.js').access; //{'USERNAME':'', 'ACCESS_KEY': ''}
const bsLocalOptions = {
'key': access.ACCESS_KEY,
'local-proxy-host': PROXY_HOST,
'local-proxy-port': PROXY_PORT,
'local-proxy-user': PROXY_USER,
'local-proxy-pass': ROXY_PASS,
'local-identifier': LOCAL_ID //'Test123'
}
var Nightwatch = require('nightwatch');
var browserstack = require('browserstack-local');
var bs_local;
try {
process.mainModule.filename = "./node_modules/nightwatch/bin/nightwatch"
// Code to start browserstack local before start of test
console.log("Connecting local");
Nightwatch.bs_local = bs_local = new browserstack.Local();
bs_local.start(bsLocalOptions, function (error) {
if (error) throw error;
console.log('Connected. Now testing...');
Nightwatch.cli(function (argv) {
Nightwatch.CliRunner(argv)
.setup(null, function () {
// Code to stop browserstack local after end of parallel test
bs_local.stop(function () { });
})
.runTests(function () {
// Code to stop browserstack local after end of single test
bs_local.stop(function () { });
});
});
});
} catch (ex) {
console.log('There was an error while starting the test runner:\n\n');
process.stderr.write(ex.stack + '\n');
process.exit(2);
}