Aurelia e2e:检查div中的span是否包含某些文本

时间:2017-05-29 21:07:18

标签: node.js protractor aurelia e2e-testing

我想看看div中包含的文本是否包含在某个文本中。

这是HTML:

<div class="funds">
    <span>banking</span>
    <span class="m-l-sm">
        <b>EUR 1,000</b>
    </span><!--anchor-->
</div>

我想检查<span class="m-l-sm">是否包含'EUR'。

我尝试这样做的一种方式(在其他几个方面)是:

var checkFunds = element(by.id("m-l-sm"));
if (checkFunds.getText().toContain('EUR'&'GBP')) {
    //do something
}

我收到错误消息,指出.toContain()不是函数。

关于如何继续,我有点不知所措。

1 个答案:

答案 0 :(得分:1)

.toContain() is a Jasmine matcher's method。它通常用于断言,例如:

expect(checkFunds.getText()).toContain('EUR');

因为如果你在字符串中看到子字符串看起来真的想要做某事 - 你需要获得元素的实际文本,这意味着你需要解析.getText()返回的承诺。然后,您可以检查子串EUR是否在文本中:

var checkFunds = element(by.id("m-l-sm"));
checkFunds.getText().then(function (text) {
    if (text.indexOf('EUR') >= 0) {
        // do something
    }
});