gpt4 book ai didi

javascript - Protractor 不等待页面加载

转载 作者:行者123 更新时间:2023-11-30 07:33:41 25 4
gpt4 key购买 nike

我用 Protractor 创建了一个基本测试来点击一个元素并在新页面上检查给定元素是否存在,但是 Protractor 似乎没有等待并且它在点击之后但在新页面加载之前运行断言。我正在寻找的元素在两个页面上都可用,因此 Protractor 在加载新页面之前会在旧页面上看到该元素。有人可以告诉我我做错了什么吗?

it('should check when new page is loaded', function () {
button.click().then(function (){
return expect(newElement).to.exist;
});

最佳答案

首先,将“getPageTimeout”变量添加到 Protractor 配置文件中。

如果您还没有使用它。这是根据应用程序中的平均页面加载时间设置全局页面超时。

conf.js

getPageTimeout: 120000,//change it based on your app response time

如果它甚至没有帮助,那么在检查您正在查找的实际元素之前验证下一页的页面标题(假设它与上一页不同)。

it('should check when new page is loaded', function () {
button.click().then(function (){
browser.getCurrentUrl();
browser.getTitle().then(function (title) {
expect(title).toEqual('Next Page Title');
});
return expect(newElement.isDisplayed()).toBeTruthy();
});

即使这对您没有帮助,您也可以使用预期的条件。有几个预定义的条件可以显式等待。如果您想等待元素出现:

var EC = protractor.ExpectedConditions;

var e = element(by.id('xyz'));
browser.wait(EC.presenceOf(e), 10000);

expect(e.isPresent()).toBeTruthy();

关于javascript - Protractor 不等待页面加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41659308/

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