我是量角器的新手,正在编写AngularJS量角器测试。我正在尝试从Google Chrome控制台读取一个网址,但收到错误消息“失败:“ url”参数必须为字符串类型。收到的类型为undefined“。我的代码是:
let address;
.
.
function readingUrl() {
browserA.manage().logs().get('browser')
.then(function (browserLog) {
var i = 0;
for (i; i <= browserLog.length - 1; i++) {
if (browserLog[i].message.indexOf('My Url:') != -1) {
address = browserLog[i].message.split('My Url:')[1].toString();
return address;
}
}
});
}
我这样调用此函数:
browserB.get(readingUrl()).then(() => {
browserB.sleep(3000);
});
Chrome控制台中的网址如下:
My Url:https://www.google.com/
有人可以帮我吗,我正在努力做,并且永远被困在这里
答案 0 :(得分:0)
尝试以下功能: 不是从“ then block”返回,而是从readingUrl主函数返回。
let address;
.
.
function readingUrl() {
browserA.manage().logs().get('browser')
.then(function (browserLog) {
var i = 0;
for (i; i <= browserLog.length - 1; i++) {
if (browserLog[i].message.indexOf('My Url:') != -1) {
address = browserLog[i].message.split('My Url:')[1].toString();
}
}
});
return address;
}
答案 1 :(得分:0)
这应该有效
readingUrl().then(url =>
browserB.get(url)
.then(() => browserB.sleep(3000))
)