If-Statement中的Javascript元素验证

Javascript Element Validation within If-Statement

本文关键字:验证 元素 Javascript 中的 If-Statement      更新时间:2023-09-26

我在 if 语句中添加元素验证时遇到问题。

基本上,与 if 语句

的结果无关,量角器仍在尝试查找 if 语句中指定的元素。

以下是即使 if 语句返回 false 仍在运行的代码:

if (thisIsAlwaysFalse == true) {
    console.log(':::::::::::::::' + thisIsAlwaysFalse);
    it('If-statement test', function(done) {
        var elementToFind = element(by.xpath('//td[contains(@class,"hello")]'));
        browser.wait(function() {
            return browser.isElementPresent(elementToFind);
        }, 5000);
        elementToFind.click();
        done();
    });
}

另外,有趣的是控制台.log部分被成功忽略了!

任何人都有解决方案,或者可能知道为什么会发生这种情况?

提前致谢:)

您是否调试了有问题的区域?然而,你总是错误的陈述可能是一个承诺,这总是一个真实的价值。为了解决它,你需要把整个块放回调。例如:

doStuff()
.then(function (result) {
    if (yourAlwatsFalsyCondition(result) {
        return elementFindYouDid(results)
            .moreStuff(doMore);
    }
})