我使用床头柜实施了e2e测试,甚至认为该测试在本机上可以正常运行,当尝试使用Travis CI和SauceLabs运行它们时,我在屏幕上收到此消息:“错误会话ID为XXXX的测试已经完成,并且无法接收更多命令”。
我正在使用的夜视配置如下:
require('babel-register')
var config = require('../../config')
var TRAVIS_JOB_NUMBER = process.env.TRAVIS_JOB_NUMBER;
module.exports = {
src_folders: ['test/e2e/specs'],
output_folder: 'test/e2e/reports',
custom_assertions_path: ['test/e2e/custom-assertions'],
selenium: {
start_process: true,
server_path: require('selenium-server').path,
host: '127.0.0.1',
log_path : "",
port: 4445,
cli_args: {
'webdriver.chrome.driver': require('chromedriver').path,
}
},
test_workers: { "enabled": true, "workers": "auto" },
test_settings: {
default: {
launch_url:'http://'+ process.env.SAUCE_USERNAME + ':' +
process.env.SAUCE_ACCESS_KEY +"@ondemand.saucelabs.com:80/wd/hub",
selenium_port: 80,
selenium_host: "ondemand.saucelabs.com",
silent: true,
username: process.env.SAUCE_USERNAME,
access_key: process.env.SAUCE_ACCESS_KEY,
globals: {
waitForConditionTimeout: 10000,
},
desiredCapabilities: {
build: `build-${TRAVIS_JOB_NUMBER}`,
'tunnel-identifier': TRAVIS_JOB_NUMBER,
},
},
chrome: {
desiredCapabilities: {
browserName: 'chrome',
javascriptEnabled: true,
acceptSslCerts: true
}
},
firefox : {
desiredCapabilities: {
platform: 'XP',
browserName: 'firefox',
version: '33'
}
},
}
}
我还尝试将launch_url设置为“ http://ondemand.saucelabs.com:80”,
另外,我应该说我正在修改URL,因为我正在测试不同的页面(例如'http://ondemand.saucelabs.com:80'+'/ foo'),但是运行测试时似乎他们甚至都没有找到屏幕上的元素。
.travis.yml文件非常简单:
sudo: required
language: node_js
node_js:
- "9.10.1"
addons:
sauce_connect: true
有人知道为什么测试不起作用吗?他们让我发疯。
谢谢!