Как часть моего nightwatch.js тестирования, у меня есть следующий код, который перечислит все значения элемента (в данном случае, список городов Великобритании);
"Page 2 Location SEO Crawl paths are displayed": function (browser) {
browser.elements('xpath', '//a[contains(@href,"location")]', function (results) {
results.value.map(function(element) {
browser.elementIdAttribute(element.ELEMENT, 'innerText', function(res) {
var resme = res.value;
console.log(resme)
});
});
});
},
Это правильно перечисляет все значения элементов, как таковые;
Что я сейчас хотел бы сделать, это проверить, что Ноттингем указан в результате, а Fail - тест, если это не так.
Я установил пакет assert npm, чтобы посмотреть, поможет ли это, что изменилосьмой код для;
"Page 2 Location SEO Crawl paths are displayed": function (browser) {
browser.elements('xpath', '//a[contains(@href,"location")]', function (results) {
results.value.map(function(element) {
browser.elementIdAttribute(element.ELEMENT, 'innerText', function(res) {
var resme = res.value;
console.log(resme);
if (resme.includes("Nottingham")) {
assert.ok(true);
}
else {
assert.ok(false);
}
});
});
});
},
, но это не сработало, поскольку я продолжал получать следующую ошибку:
Isиспользование assert - лучший способ проверить это, или есть более простой способ утверждать, что Nottingham включен в этот список, а тесты не пройдены если это не так.
Я пытался использовать resme.includes("Nottingham")
, но это не провал теста.
Любая помощь будет принята с благодарностью.
Спасибо.