量角器:检查链接是否包含特定文本。预期[true,true]为[true,true]

时间:2017-06-14 14:50:12

标签: node.js jasmine protractor aurelia e2e-testing

我正在测试,如果用户的货币为“EUR”而另一种货币“GBP”显示在页面顶部,那么我当时希望链接包含“EUR”和另一个包含文本“GBP”的链接出现在页面的下方。这包含在名为"nav-tabs au-target"的div中 当我运行我的脚本时,我收到以下错误: Expected [ true, true ] to be [ true, true ]

这是我的页面对象文件:

if(text.indexOf("EUR") >-1 && text.indexOf("GBP") >-1){
expect(element.all(by.linkText("EUR"&&"GBP")).isDisplayed())
.toBe([true, true]);
console.log("EUR AND GBP buyer");}

我试过看"nav-tabs au-target"是否包含链接文字“EUR”和“GBP”而不是element.all但是努力让它工作 感谢

1 个答案:

答案 0 :(得分:2)

这可能不是Protactor或您的应用程序的问题,而是使用不正确的Jasmine API。

特别是:

expect(actualValue).toBe(expectedValue)

将进行以下检查:

actualValue === expectedValue

不会为对象或数组工作。

对于对象或数组,您应该使用toEqual而不是toBe来执行两个值之间的深度比较。

您可以在以下fiddle中看到此操作。