我想看看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()
不是函数。
关于如何继续,我有点不知所措。
答案 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
}
});