如何从onPrepare()中的conf传递全局变量。以便它可以用于不同的规格。从量角器中的onPrepare()中传递全局变量
Inside onPrepare(),因为我从函数中获取值,我在onPrepare()中调用。所以想要把这个价值看作全球性的。以便它可以在所有规格中使用。
如何从onPrepare()中的conf传递全局变量。以便它可以用于不同的规格。从量角器中的onPrepare()中传递全局变量
Inside onPrepare(),因为我从函数中获取值,我在onPrepare()中调用。所以想要把这个价值看作全球性的。以便它可以在所有规格中使用。
可以在onPrepare功能使用或设置browser.params对象:
onPrepare: function() {
browser.params.YOUR_PARAM = 'VALUE';
}
使用符合规格:
it('should...', function() {
expect(browser.params.YOUR_PARAM).toEqual('VALUE');
});
这里是我是如何做到全局 - 我使用多个浏览器在测试中,所以我需要一些快捷方式来访问这两个浏览器很容易:
onPrepare: function() {
// Making manager and user globals - they will be accessible in all tests.
global.manager = browser;
global.user = browser.forkNewDriverInstance();
...
//Making Expected Conditions global since it used widely.
global.EC = protractor.ExpectedConditions;
然后,它将被访问到处只是由ca lling
manager.$('blabla').click();
user.$('blabla').click();
user.wait(EC.visiblityOf($('foo')), 5000, 'foo should be visible');
希望这有助于!
它应该 - 我用最长的时间使用最新的3.3.0量角器和带量角器的茉莉花。你能提供你的例子吗? – Xotabu4
我已经张贴在小胶质的回答,您可以检查出基本上你应该使用“全球”
helper.js - >常用函数/方法要执行
module.exports = {
foo: 'bar',
doSomething: function() {
var sum = 1+1;
return sum;
}
};
配置.js文件
var helper = require('./helper.js’);
onPrepare: function() {
global.output = helper.doSomething();
},
spec.js
describe(‘global variable test’, function() {
it(’should print global variable’, function() {
console.log(output);
});
});
谢谢,是的,它工作正常.. – saurabh04
当你在配置文件中设置shardTestFiles参数为true时它会工作吗? 当我将它设置为true时,我遇到了全局值问题。当错误时工作。
它不适用于browser.params <变量名称> – saurabh04