gpt4 book ai didi

javascript - CodeceptJs等待元素从DOM中消失

转载 作者:行者123 更新时间:2023-12-03 13:24:00 24 4
gpt4 key购买 nike

我正在开发一个测试套件,我发现,以确保一个页面已经准备好,当选择“div.spinner”消失的唯一途径。
我能够使用CapserJ(使用PhantomJ或SlimerJs)来捕获这种情况:

casper.waitWhileSelector('div.spinner');

我不得不使用nightmarejs 2.10.1切换到codeceptjs 1.0.1,但我无法正确转换此条件。

我必须避免等待预定义的时间,因为我们要测试许多环境,根据负载的不同,等待时间可能从1s到40s +不等。

目前,我正计划在codecept上复制Casper功能 Casper.prototype.waitWhileSelector

有人有类似的问题吗?我是否缺少CodeceptJs的某些功能?

Related github issue

提前致谢

最佳答案

作为引用,此方法与名称waitUntilExists合并:

https://github.com/Codeception/CodeceptJS/pull/683
https://github.com/Codeception/CodeceptJS/issues/682

要使用它,您可以执行以下操作:

describe('#waitUntilExists', () => {  
it('should wait for an element to be removed from DOM', () => {
return I.amOnPage('/spinner')
.then(() => I.seeElementInDOM('.loader'))
.then(() => I.waitUntilExists('.loader'))
.then(() => I.dontSeeElement('.loader'))
});

it('should wait for a non-exising element to be removed from DOM', () => {
return I.amOnPage('/spinner')
.then(() => I.dontSeeElement('.non-existing-class'))
.then(() => I.waitUntilExists('.non-existing-class'))
.then(() => I.dontSeeElement('.non-existing-class'))
});
});

关于javascript - CodeceptJs等待元素从DOM中消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45866080/

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