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

问题描述:

我正在测试以查看如果用户在页面顶部显示“EUR”货币和另一种“GBP”货币,我然后期望包含文本“EUR”的链接和包含文本“GBP”的另一个链接进一步位于页面下方。这是包含在名为DIV "nav-tabs au-target" 当我运行我的脚本,我得到以下错误: Expected [ true, true ] to be [ true, true ]量角器:检查链接是否包含特定文本。预期[true,true]为[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,但努力使其正常工作 谢谢

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

特别是:

expect(actualValue).toBe(expectedValue) 

将做以下检查:

actualValue === expectedValue 

,不会对对象或数组。

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

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

+0

非常感谢您的帮助! – James

+0

欢迎您!如果答案有用,请考虑将其标记为正确,以便它不会出现在“未答复”部分。 –