gpt4 book ai didi

javascript - 我如何在 Protractor 测试中解决两个不同的 promise ?

转载 作者:行者123 更新时间:2023-11-30 00:29:10 25 4
gpt4 key购买 nike

我是 Node.js 的初学者。我 promise 从服务器下载文件,然后将其解析为 json 对象并返回。另一个 promise 返回一个网页元素()。这两个 promise 必须一个接一个地解决:第一个返回 json 对象的 promise ,这个工作很好,然后是获取页面元素的 promise 。使用来自 json 对象的键,我必须测试元素是否包含相同的文本。

代码:

var menuItems = element(by.id('menu')).all(by.tagName('li'));

it('should contain', function (done) {
jsonPromise.then(function () { // work
console.log('Inside jsonPromise then');
menuItems.then(function () { //------> not step into
console.log('Inside menuItems then');
expect(menuItems.get(0).getText()).toEqual(jsonData.home);
done();
});
});
});

使用此代码 Protractor 返回:1 个测试,0 个断言,0 个失败这是为什么?我做错了什么?

注意:两个控制台命令都执行

最佳答案

您需要jsonPromise 放在protractorControl Flow:

browser.controlFlow().await(jsonPromise).then(function (data) {
expect(menuItems.first().getText()).toEqual(data.home);
});

关于javascript - 我如何在 Protractor 测试中解决两个不同的 promise ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30253112/

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