我已经创建了一个项目。这是一个vue.js应用程序。有少量的单元测试(玩笑)和端到端测试(守夜)。
当我尝试使用npm运行端到端测试时,我得到:
Error retrieving a new session from the selenium server
Connection refused! Is selenium server started?
{ value:
{ message: 'Unable to create session from org.openqa.selenium.remote.NewSessionPayload@16b328bc\nBuild info: version: \'3.12.0\', revision: \'7c6e0b3\', time: \'2018-05-08T15:15:08.936Z\'\nSystem info: host:
\'SYNERGY02\', ip: \'192.168.1.41\', os.name: \'Windows 10\', os.arch: \'amd64\', os.version: \'10.0\', java.version: \'1.8.0_181\'\nDriver info: driver.version: unknown',
error: 'session not created' },
status: 33 }
我不知道我可能会错过什么。这让我困了一个多星期
这是nightwatch.json
在D:\ xxx \ test \ bin \ myedgedriver.exe中找到路径
在D:\ xxx \ test \ e2e \ nightwatch.conf.js中找到路径
require('babel-register')
var config = require('../../config')
// http://nightwatchjs.org/gettingstarted#settings-file
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',
port: 4444,
cli_args: {
"webdriver.edge.driver": "../bin/MicrosoftWebDriver.exe",
'webdriver.chrome.driver': require('chromedriver').path,
}
},
test_settings: {
default: {
selenium_port: 4444,
selenium_host: 'localhost',
silent: true,
globals: {
devServerURL: 'http://localhost:' + (process.env.PORT || config.dev.port)
}
},
chrome: {
desiredCapabilities: {
browserName: 'chrome',
javascriptEnabled: true,
acceptSslCerts: true
}
},
firefox: {
desiredCapabilities: {
browserName: 'firefox',
javascriptEnabled: true,
acceptSslCerts: true
}
},
edge: {
desiredCapabilities: {
browserName: 'edge',
javascriptEnabled: true,
acceptSslCerts: true,
nativeEvents: true
}
}
}
}
和我的窗口版本。
1803 (os build 17134.285)
我的edgewebdriver版本。
Release 17134
Version: 6.17134 | Edge version supported: 17.17134
我的边缘浏览器版本。
Microsoft Edge 42.17134.1.0
最后是package.json ver。中的我的守夜人。
"nightwatch": "^0.9.12"
"selenium-server": "^3.0.1"
答案 0 :(得分:0)
此错误消息...
Error retrieving a new session from the selenium server
Connection refused! Is selenium server started?
{ value: { message: 'Unable to create session from org.openqa.selenium.remote.NewSessionPayload@16b328bc\nBuild info: version: \'3.12.0\', revision: \'7c6e0b3\', time: \'2018-05-08T15:15:08.936Z\'\nSystem info: host: \'SYNERGY02\', ip: \'192.168.1.41\', os.name: \'Windows 10\', os.arch: \'amd64\', os.version: \'10.0\', java.version: \'1.8.0_181\'\nDriver info: driver.version: unknown', error: 'session not created' }, status: 33 }
...表示连接到 Selenium Server 时出错。
Selenium Server 日志会为我们提供更多导致精确出错的线索。
但是,目标测试环境与下面的现有 Test Environment 之间似乎存在差异:
您提到了:
"selenium-server": "^3.0.1"
但是您的错误跟踪日志中提到:
version: \'3.12.0\'
在启动time: \'2018-05-08T15:15:08.936Z\
之前,请确保通过以下命令启动 Selenium Server :
@Tests
如果要使用本机事件功能,请在命令行中使用以下选项进行指示:
java -jar <path_to>/selenium-server-standalone-<version>.jar
要获取其他命令行选项的帮助,请执行:
-Dwebdriver.enable.native.events=1
您可以在以下位置找到类似的详细讨论: