我使用量角器v1.4.0并且我想从命令行设置量角器baseUrl所以我不能使用
baseUrl: 'http://localhost:8000/',
配置选项。我想在量角器配置文件中使用“params”选项定义基本URL的默认值,如下所示:
params: {
baseUrl: 'http://localhost:8080/'
},
然后在运行量角器时通过从命令行传递新值来覆盖默认值,如下所示:
protractor 'path_to_my_conf_file' --params.baseUrl http://localhost:80/
然后在我的spec文件中我需要使用protractor API设置基本URL,但我找不到如何做到这一点。
以下问题的第一个答案正是我需要的,但它不起作用。
答案 0 :(得分:7)
作为另一种选择,也可以在browser.baseUrl = "https://test-url.com"
中尝试onPrepare
(适用于Protractor 1.4.0)
答案 1 :(得分:4)
您可以从命令行更改它,如下所示:
protractor --baseUrl http://whateveryouwant
答案 2 :(得分:2)
使用grunt-protractor-runner
和grunt-option
库通过grunt
运行测试:
protractor: {
options: {
configFile: "path_to_my_conf_file",
args: {
baseUrl: grunt.option('baseUrl', 'http://localhost:80/')
}
}
}
然后,通过以下方式运行任务:
grunt protractor --baseUrl=http://mynewurl
并且,为了让它使用默认的baseUrl
,只需运行:
grunt protractor
答案 3 :(得分:0)
使用gulp进行测试;如下所示是gulpfile.js
var gulp = require('gulp');
var runSequence = require('run-sequence');
var protractor = require('gulp-protractor').protractor;
gulp.task('protractor', function() {
var configFile = 'test/e2e/protractor-config.js';
return gulp
.src(['./test/e2e/spec/sample.js'])
.pipe(protractor({
configFile: configFile,
args: ['--baseUrl', 'http://www.google.com']
}))
.on('error', function(e) { throw e; });
});
gulp.task('test', function(callback) {
runSequence(
'protractor',
callback
);
});
任务运行:
gulp test