gpt4 book ai didi

javascript - Protractor 中的元素加载问题

转载 作者:行者123 更新时间:2023-11-27 23:44:03 25 4
gpt4 key购买 nike

我现在对 Protractor 感到非常困惑。

似乎有时我的元素会及时加载,以便下一个操作发生在它们身上,有时则不然。我猜这与其异步性质有关。

无论如何,例如,有时此代码会通过,有时则不会:

it('should create an audience using an existing audience and should be able to filter and search for that audience', function () {
page.audienceTab.click();
$('.panel-list .row .panel-list-header .btn').click();
$('.panel-list div .btn').click();
$('.edit-audience .row .col-md-3 accordion .panel-group .name-filter .panel-collapse .panel-body section input').sendKeys('test-audience');
$('.expose-offset button').click();
$('.col-xs-4 input').sendKeys('test-audience');
expect($('.panel-list .panel h3').getText()).toEqual('test-audience');
});

无论如何,这个问题可以解决,以便保证元素在触发下一个操作之前加载?

最佳答案

您可以尝试显式解决click promise :

page.audienceTab.click().then(function () {
$('.panel-list .row .panel-list-header .btn').click();
$('.panel-list div .btn').click();
$('.edit-audience .row .col-md-3 accordion .panel-group .name-filter .panel-collapse .panel-body section input').sendKeys('test-audience');
$('.expose-offset button').click();
$('.col-xs-4 input').sendKeys('test-audience');
expect($('.panel-list .panel h3').getText()).toEqual('test-audience');
});

或者,等待元素出现然后再单击:

var EC = protractor.ExpectedConditions,
button = $('.panel-list .row .panel-list-header .btn');
browser.wait(EC.presenceOf(button), 5000);
button.click();
// rest of the test

关于javascript - Protractor 中的元素加载问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33401376/

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