检查量角器中是否存在元素
Checking if an element exists in Protractor
有一个特定的页面有一个编号 - 这是列表的 link。我希望能够搜索计数。如果计数为 0,则什么都不做,否则单击数字打开列表。
我正在使用 Protractor 中的 isPresent() 函数来搜索它。
我的密码是
$('cda-e2e-softwareCountZero').isPresent().then(function(result) {
if ( result ) {
// No Software
} else {
element(by.id('cda-e2e-softwareCount')).click();
}
});
但是,这样总是returns下面的错误
错误:超时 - 未在 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>
增加 Jasmine 在 conf.js 文件上的超时时间。按照下面的代码
allScriptsTimeout: 60000,
jasmineNodeOpts: {
// Default time to wait in ms before a test fails.
defaultTimeoutInterval: 12000
},
有一个特定的页面有一个编号 - 这是列表的 link。我希望能够搜索计数。如果计数为 0,则什么都不做,否则单击数字打开列表。
我正在使用 Protractor 中的 isPresent() 函数来搜索它。
我的密码是
$('cda-e2e-softwareCountZero').isPresent().then(function(result) {
if ( result ) {
// No Software
} else {
element(by.id('cda-e2e-softwareCount')).click();
}
});
但是,这样总是returns下面的错误
错误:超时 - 未在 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>
增加 Jasmine 在 conf.js 文件上的超时时间。按照下面的代码
allScriptsTimeout: 60000,
jasmineNodeOpts: {
// Default time to wait in ms before a test fails.
defaultTimeoutInterval: 12000
},