Во-первых, позвольте мне сказать, что я новичок в стажировке и API Leadfoot. То, что я пытаюсь сделать, это перебрать массив элементов и выполнить утверждение для каждого из них. Вот мой код:
'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? Как лучше всего это сделать? Любая оказанная помощь будет высоко оценена!
[ 'ALL', 'P1', 'P2', 'P3' ]
равно[ 'ALL', 'P1', 'P2', 'P377' ]
, и задаетесь вопросом, почему ваш компилятор спорит с вами? Сообщение об ошибке понятно; он говорит вам, что ваше утверждение неверно. - person autistic   schedule 17.08.2017