gpt4 book ai didi

javascript - 检查 Protractor 中是否存在元素

转载 作者:行者123 更新时间:2023-11-28 04:48:10 24 4
gpt4 key购买 nike

有一个特定的页面有一个数字 - 这是一个列表的链接。我希望能够搜索计数。如果计数为 0,则不执行任何操作,否则单击数字打开列表。

我正在 Protractor 中使用 isPresent() 函数来搜索它。

我的代码是

$('cda-e2e-softwareCountZero').isPresent().then(function(result) {

if ( result ) {
// No Software
} else {
element(by.id('cda-e2e-softwareCount')).click();
}

});

但是,这总是返回以下错误

错误:超时 - 在 jasmine.DEFAULT_TIMEOUT_INTERVAL 指定的超时时间内未调用异步回调。

如何解决这个问题?

编辑:

其 HTML 代码为

<span class="panelHead">
Softwares
<a ng-if="summaryMetaDataList.softwares.length != 0"
ng-href="/application/application/{{summaryMetaDataInfo.entityId || alternateText}}/software/list{{dateParamsUrl}}">
<span style="text-decoration: none; color: black;">(</span><span class="textUnderlineBlue" id="cda-e2e-softwareCount">{{summaryMetaDataList.softwares.length}}</span><span style="text-decoration: none; color: black;">)</span>
</a>
<a ng-if="summaryMetaDataList.softwares.length == 0">
<span style="color: black" id="cda-e2e-softwareCountZero">({{summaryMetaDataList.softwares.length}})</span>
</a>
</span>

最佳答案

增加conf.js 文件上的 Jasmine 超时。请按照以下代码操作

  allScriptsTimeout: 60000,

jasmineNodeOpts: {
// Default time to wait in ms before a test fails.
defaultTimeoutInterval: 12000
},

关于javascript - 检查 Protractor 中是否存在元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43182245/

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