量角器:其他语句未按预期运行

时间:2018-06-27 12:26:27

标签: if-statement jasmine protractor

我试图单击一个链接(如果存在),否则应添加相应的链接,然后单击该链接。

在下面的If循环中,如果不满足第一个条件,则不会执行“ Else”条件。如果将其放置在IF循环之外,则同样有效。

我很困惑。

有人可以帮我解决这个问题吗?

var ConfigLink = element.all(by.partialLinkText('Provide Configuration')).get(0);

        ConfigLink.isDisplayed().then(function(result) {
        if (result) {
                ConfigLink.click();
        } 

        else {
                element.all(by.css('input[name="checks"]')).get(0).click();
        }

        });

如果初始If条件失败,则我希望脚本执行else部分,但这不起作用。

请建议如何解决此问题

1 个答案:

答案 0 :(得分:0)

找到了答案。用'isPresent()'替换isDisplayed(),代码现在可以正常工作了,没有任何问题。这是有道理的,因为isDisplayed()假定该元素已经存在。如果该元素不存在,则应该引发错误。