我有一个想法让我的配置更灵活。例如,我有10000个具有相同参数的配置文件:
seleniumAddress: 'http://localhost:4444/wd/hub',
specs: ['C:/Users/Lilia.Sapurina/Desktop/Protractor Tests/Scenarios/ps-grid-column-filter-range_spec.js'],
params: {'url_filter': 'http://wks-15103:8010/ps/ng-components/examples/ps-grid-column-filter-range.html'}
一旦我想改变规格,html或更改selenium地址的路径。我可以在另一个文件中为我的所有配置执行此操作吗?
例如,在我的配置中写一下:
seleniumAddress: '../Variables/seleniumAdress.txt'
或者可能存在另一种有趣的方法来解决这个问题?
答案 0 :(得分:12)
您可以将常用配置规则导出为node.js模块:
// globalProtractor.conf.js
module.exports = {
seleniumAddress: 'http://localhost:4444/wd/hub',
specs: ['C:/Users/Lilia.Sapurina/Desktop/Protractor Tests/Scenarios/ps-grid-column-filter-range_spec.js'],
params: {
'url_filter': 'http://wks-15103:8010/ps/ng-components/examples/ps-grid-column-filter-range.html'
}
并在另一个档案中使用
// protractor.conf.js
var globalConf = require('/path/to/globalProtractor.conf.js');
globalConf.specs.push('path/new.spec.js');
exports.config = globalConf;
答案 1 :(得分:1)
使用@driver_by帮助我找到了解决问题的好方法。现在我的文件被隔离。如果我想更改url或路径到文件夹,我应该只更改全局配置。
// globalProtractor.conf.js
module.exports = {
seleniumAddress: 'http://localhost:4444/wd/hub',
baseUrl: 'http://wks-15103:8010/ps/ng-components/examples/',
specs: [],
path_to_scenario: '../Scenarios/',
path_to_spec: '../Specs/',
path_to_lib: '../Lib/'
}
另一个文件:
// protractor.conf.js
var globalConf = require('../Global_configs/globalProtractor_conf.js');
globalConf.specs.push(path_to_spec + 'ps-grid-column-filter-range_spec.js');
globalConf.params = {'url_filter': 'ps-grid-column-filter-range.html',
'column_number_filter': 5,
'req_lib_filter': globalConf.path_to_lib + 'jasmine-expect'}
exports.config = globalConf;