首先让我说我对实习生和Leadfoot API相当新。我想要做的是遍历一个元素数组并对每个元素执行断言。这是我的代码:
'Alerts': function () {
return this.remote
.get(require.toUrl(url))
.setFindTimeout(timeout)
.findById('alertsHeader')
.click()
.end()
.findByClassName('_3WMFy')
.findAllByCssSelector('div')
.getVisibleText()
.then(function(texts){
assert.equal(texts, [ 'ALL', 'P1', 'P2', 'P3' ]);
});
}
但是,测试失败并显示以下输出:
AssertionError: expected [ 'ALL', 'P1', 'P2', 'P3' ] to equal [ 'ALL', 'P1', 'P2', 'P3' ]
有人可以解释这个错误吗?也许我错过了一些东西(通常就是这种情况),但我一直盯着这个,我很确定这两个是平等的。所以我故意改变了一行,使其中一个元素不匹配,并得到以下错误:
AssertionError: expected [ 'ALL', 'P1', 'P2', 'P3' ] to equal [ 'ALL', 'P1', 'P2', 'P377' ]
[
0: "ALL",
1: "P1",
2: "P2",
E 3: "P377",
A 3: "P3",
length: 4
]
我的问题是,我在这里做错了,或者这是一个错误?这是迭代这些元素的正确方法,还是我应该做其他事情?可以在这里使用for循环吗?最好的方法是什么?我们非常感谢您提供的任何帮助!