我有以下配置但收到错误
ERROR
registration capabilities Capabilities [{platform=WINDOWS, ensureCleanSession=true, browserName=internet explorer, version=}] does not match the current platform LINUX 18:17:05.892 INFO - Driver provider org.openqa.selenium.edge.EdgeDriver registration is skipped: registration capabilities Capabilities [{platform=WINDOWS, browserName=MicrosoftEdge, version=}] does not match the current platform LINUX 18:17:05.896 INFO - Driver class not found: com.opera.core.systems.OperaDriver 18:17:05.896 INFO - Driver provider com.opera.core.systems.OperaDriver is not registered 18:17:06.187 WARN - Failed to start: SocketListener0@0.0.0.0:4444 Exception in thread "main" java.net.BindException: Selenium is already running on port 4444. Or some other service is. at org.openqa.selenium.server.SeleniumServer.start(SeleniumServer.java:492) at org.openqa.selenium.server.SeleniumServer.boot(SeleniumServer.java:305) at org.openqa.selenium.server.SeleniumServer.main(SeleniumServer.java:245) at org.openqa.grid.selenium.GridLauncher.main(GridLauncher.java:64) Selenium Standalone has exited with code 1 Selenium standalone server started at http://10.33.24.128:43448/wd/hub
Jenkins命令
## run testing node_modules/protractor/bin/webdriver-manager update --standalone node_modules/protractor/bin/webdriver-manager start > /dev/null 2>&1 & while ! curl http://localhost:4444/wd/hub/status &>/dev/null; do :; done node_modules/protractor/bin/protractor protractor.conf.js
我的配置文件位于
之下exports.config = { directConnect: false, capabilities: { 'browserName': 'chrome' }, chromeDriver: './node_modules/protractor/selenium/chromedriver', seleniumAddress: 'http://localhost:4444/wd/hub', framework: 'jasmine', specs: ['tests/specs/*-spec.js'], jasmineNodeOpts: { showColors: true, defaultTimeoutInterval: 30000 } };
答案 0 :(得分:0)
您收到错误消息:
Selenium已在端口4444上运行。或者其他一些服务是。
所以你的测试失败了,因为无法设置Selenium,因为它所需的端口已经在使用。
这可能是因为另一个构建在同一台机器上并行运行,或者因为Selenium没有被先前的构建停止,或者其他一些服务器正在使用端口4444。
在开始构建之前,您需要确保此端口是免费的。
您可以在要使用Port Allocator plugin或Throttle Concurrent Builds plugin的同一端口号的同一台计算机上限制并行运行的多个版本。
答案 1 :(得分:0)
避免直接处理并将其委托给像gulp-angular-protractor这样的gulp插件:
1)。启动/停止硒服务器
2)。并运行量角器测试
完整示例
<强> Gulpfile.js 强>
/*jshint node: true, camelcase: false*/
/*global require: true*/
'use strict';
var gulp = require('gulp'),
gulpProtractorAngular = require('gulp-angular-protractor');
// Setting up the test task
gulp.task('regression-suite', function(callback) {
gulp
.src(['./tests/specs/*spec.js'])
.pipe(gulpProtractorAngular({
'configFile': 'protractor.conf.js',
'debug': false,
'autoStartStopServer': true
}))
.on('error', function(e) {
console.log(e);
})
.on('end', callback);
});
<强> conf.js 强>
与之前相同
命令提示
C:>gulp regression-suite
<强>詹金斯强>
添加一个步骤作为执行Windows命令
gulp regression-suite