无法 运行 Angular 2 使用量角器进行 E2E 测试
Not able to run Angular 2 E2E tests using protractor
我正在使用 Angular 2 和 Angular 2 Seed package. I am trying to run my E2E tests. I have followed the steps which are listed on Seed 页面。
我的量角器配置如下所示:
const config = {
baseUrl: 'http://localhost:6563/',
specs: [
'./dist/dev/**/*.e2e-spec.js'
],
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
isVerbose: false,
includeStackTrace: false,
},
directConnect: true,
capabilities: {
browserName: 'chrome'
},
onPrepare: function() {
const SpecReporter = require('jasmine-spec-reporter');
jasmine.getEnv().addReporter(new SpecReporter({ displayStacktrace: true }));
browser.ignoreSynchronization = false;
},
useAllAngular2AppRoots: true
};
if (process.env.TRAVIS) {
config.capabilities = {
browserName: 'firefox'
};
}
exports.config = config;
我在一个终端上使用 npm run webdriver-start
启动网络驱动程序。我可以看到 selenium 服务器已启动并且 运行ning 消息:
[16:01:58] I/start - seleniumProcess.pid: 20888
16:01:59.133 INFO - Launching a standalone Selenium Server
16:01:59.262 INFO - Java: Oracle Corporation 25.111-b14
16:01:59.262 INFO - OS: Windows 10 10.0 x86
16:01:59.283 INFO - v2.53.1, with Core v2.53.1. Built from revision a36b8b1
16:01:59.345 INFO - Driver class not found: com.opera.core.systems.OperaDriver
16:01:59.345 INFO - Driver provider com.opera.core.systems.OperaDriver is not registered
16:01:59.353 INFO - Driver provider org.openqa.selenium.safari.SafariDriver registration is skipped:
registration capabilities Capabilities [{browserName=safari, version=, platform=MAC}] does not match the current platform WIN10
16:01:59.354 INFO - Driver class not found: org.openqa.selenium.htmlunit.HtmlUnitDriver
16:01:59.354 INFO - Driver provider org.openqa.selenium.htmlunit.HtmlUnitDriver is not registered
16:01:59.532 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
16:01:59.532 INFO - Selenium Server is up and running
我可以从 chrome 到达 http://127.0.0.1:4444/wd/hub
并创建一个会话,但是当我 运行 在另一个终端上进行 E2E 测试时,出现以下错误:
node_modules\selenium-webdriver\http\index.js:365
onError(new Error(message));
Error: ECONNREFUSED connect ECONNREFUSED 127.0.0.1:62400
at ClientRequest.<anonymous> (C:\Users\..\node_modules\selenium-webdriver\http\index.js:365:15)
at emitOne (events.js:77:13)
at ClientRequest.emit (events.js:169:7)
at Socket.socketErrorListener (_http_client.js:269:9)
at emitOne (events.js:77:13)
at Socket.emit (events.js:169:7)
at emitErrorNT (net.js:1269:8)
at nextTickCallbackWith2Args (node.js:442:9)
at process._tickCallback (node.js:356:17)
From: Task: WebDriver.createSession()
at acquireSession (C:\Users\..\node_modules\selenium-webdriver\lib\webdriver.js:62:22)
at Function.createSession (C:\Users\..\node_modules\selenium-webdriver\lib\webdriver.js:295:12)
有什么指示可以将我推向正确的方向吗?
我今天早上才开始出现这个错误。我怀疑这是由于昨晚安装了 windows 个更新。禁用 windows 防火墙后,我不再收到 ECONNREFUSED。
然后我又遇到了另一个错误,不得不将 chromedriver 更新到 2.24 以使量角器达到 运行。
我最近也遇到了这个问题,并通过更新量角器和 webdriver 修复了它,该版本似乎很旧。
此问题是由于angular2版本(测试版或RC版)。如果您在测试版中编写代码并将尝试 运行 RC 版本中的代码,我们需要相应地更改配置和版本。请更新您的 protrator 和 selenium-webdriver 版本。它将 运行 正常。
我正在使用 Angular 2 和 Angular 2 Seed package. I am trying to run my E2E tests. I have followed the steps which are listed on Seed 页面。
我的量角器配置如下所示:
const config = {
baseUrl: 'http://localhost:6563/',
specs: [
'./dist/dev/**/*.e2e-spec.js'
],
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
isVerbose: false,
includeStackTrace: false,
},
directConnect: true,
capabilities: {
browserName: 'chrome'
},
onPrepare: function() {
const SpecReporter = require('jasmine-spec-reporter');
jasmine.getEnv().addReporter(new SpecReporter({ displayStacktrace: true }));
browser.ignoreSynchronization = false;
},
useAllAngular2AppRoots: true
};
if (process.env.TRAVIS) {
config.capabilities = {
browserName: 'firefox'
};
}
exports.config = config;
我在一个终端上使用 npm run webdriver-start
启动网络驱动程序。我可以看到 selenium 服务器已启动并且 运行ning 消息:
[16:01:58] I/start - seleniumProcess.pid: 20888
16:01:59.133 INFO - Launching a standalone Selenium Server
16:01:59.262 INFO - Java: Oracle Corporation 25.111-b14
16:01:59.262 INFO - OS: Windows 10 10.0 x86
16:01:59.283 INFO - v2.53.1, with Core v2.53.1. Built from revision a36b8b1
16:01:59.345 INFO - Driver class not found: com.opera.core.systems.OperaDriver
16:01:59.345 INFO - Driver provider com.opera.core.systems.OperaDriver is not registered
16:01:59.353 INFO - Driver provider org.openqa.selenium.safari.SafariDriver registration is skipped:
registration capabilities Capabilities [{browserName=safari, version=, platform=MAC}] does not match the current platform WIN10
16:01:59.354 INFO - Driver class not found: org.openqa.selenium.htmlunit.HtmlUnitDriver
16:01:59.354 INFO - Driver provider org.openqa.selenium.htmlunit.HtmlUnitDriver is not registered
16:01:59.532 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
16:01:59.532 INFO - Selenium Server is up and running
我可以从 chrome 到达 http://127.0.0.1:4444/wd/hub
并创建一个会话,但是当我 运行 在另一个终端上进行 E2E 测试时,出现以下错误:
node_modules\selenium-webdriver\http\index.js:365
onError(new Error(message));
Error: ECONNREFUSED connect ECONNREFUSED 127.0.0.1:62400
at ClientRequest.<anonymous> (C:\Users\..\node_modules\selenium-webdriver\http\index.js:365:15)
at emitOne (events.js:77:13)
at ClientRequest.emit (events.js:169:7)
at Socket.socketErrorListener (_http_client.js:269:9)
at emitOne (events.js:77:13)
at Socket.emit (events.js:169:7)
at emitErrorNT (net.js:1269:8)
at nextTickCallbackWith2Args (node.js:442:9)
at process._tickCallback (node.js:356:17)
From: Task: WebDriver.createSession()
at acquireSession (C:\Users\..\node_modules\selenium-webdriver\lib\webdriver.js:62:22)
at Function.createSession (C:\Users\..\node_modules\selenium-webdriver\lib\webdriver.js:295:12)
有什么指示可以将我推向正确的方向吗?
我今天早上才开始出现这个错误。我怀疑这是由于昨晚安装了 windows 个更新。禁用 windows 防火墙后,我不再收到 ECONNREFUSED。
然后我又遇到了另一个错误,不得不将 chromedriver 更新到 2.24 以使量角器达到 运行。
我最近也遇到了这个问题,并通过更新量角器和 webdriver 修复了它,该版本似乎很旧。
此问题是由于angular2版本(测试版或RC版)。如果您在测试版中编写代码并将尝试 运行 RC 版本中的代码,我们需要相应地更改配置和版本。请更新您的 protrator 和 selenium-webdriver 版本。它将 运行 正常。