gpt4 book ai didi

javascript - 在 nightwatch js 中使用 global.js

转载 作者:行者123 更新时间:2023-11-27 22:55:37 30 4
gpt4 key购买 nike

我正在 nightwatch 中编写一些测试,并且有一个 globals.js 文件,它实际上是在下面导出一个 js 对象。

var self = module.exports = {
environment: undefined,
beforeEach: function (browser, done) {
browser.execute(function(data) {
return window.navigator.userAgent;
}, [], function(result) {
self.environment = result.value;
console.log("Run against: " + self.environment);
done();
});
console.log('the new env is', self.environment);
},
};

注意:console.log("Run against: "+ self.environment); 打印我的 env 值,在这种情况下该值不是未定义的。然而。每当我尝试从另一个文件/类访问环境时。尽管我之前更新了它,但它返回默认的未定义值。示例来自下面的测试。

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()
}
};
尽管我在 beforeEach 函数中更改了它,但

browser.globals.environment 始终返回未定义。请问我该如何实现这个目标?我做错了什么?

最佳答案

看起来browser.globalsglobals.js的副本。我将在 beforeEach 中将 self.environment 替换为 browser.globals.environment :

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();
});
}
};

关于javascript - 在 nightwatch js 中使用 global.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37652244/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com