我正在夜视中写一些测试,并有一个globals.js文件,它实际上是在下面导出一个js对象。
console.log("Run against: " + self.environment);
注意:module.exports = {
tags: ['assetindex'],
'visit': function(browser) {
console.log('the environment is', browser.globals.environment);
(/Chrome/.test(browser.globals.environment)) ?
browser
.page.assetindex().mobileVisit()
.end()
:
browser
.page.assetindex().desktopVisit()
.end()
}
};
打印我的env值,在这种情况下未定义。然而。当我尝试从另一个文件/类访问environ时。尽管我之前更新了它,但它返回默认的undefined。例子来自下面的测试。
browser.globals.environment
https://azure.microsoft.com/
总是返回undefined,尽管我在beforeEach函数中更改了它。请问我该如何实现这一目标?我做错了什么?
答案 0 :(得分:1)
似乎browser.globals
是globals.js
的副本。我会将self.environment
替换为browser.globals.environment
中的beforeEach
:
module.exports = {
environment: undefined,
beforeEach: function (browser, done) {
browser.execute(function(data) {
return window.navigator.userAgent;
}, [], function(result) {
browser.globals.environment = result.value;
console.log("Run against: " + browser.globals.environment);
done();
});
}
};