e2e在持续集成中运行它们时测试错误

时间:2018-06-23 01:11:48

标签: travis-ci nightwatch.js e2e-testing saucelabs

我使用床头柜实施了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

有人知道为什么测试不起作用吗?他们让我发疯。

谢谢!

0 个答案:

没有答案