Я пытаюсь получить последнюю строку таблицы ng-repeat (ed) через транспортир, чтобы проверить и убедиться, что объект, который я только что создал в предыдущем тестовом прогоне, появляется. Я дошел до того, что получил весь текст строки, но не могу понять, как пройти через пробную версию и ошибку, как получить каждый столбец последней строки как часть массива, чтобы я мог проверить каждую часть, а затем в последнем столбце У меня есть кнопки для кликов, которые станут следующим шагом.AngularJS e2e Тестирование с помощью прототипа
код у меня до сих пор:
var elems = element.all(by.repeater('alert in alerts'));
elems.last().then(function(elm) {
console.log(expect(elm.getText()).toMatch('/testRunner/'));
});
Как уже упоминалось выше, ожидается выход/выход я хочу проверить на это «textRunner», а вместо этого я получаю всю строку текста, как, например:
testRunner testing the runner 5 minutes No View Edit Enable
EDIT Вот мой окончательный код:
var rows = element.all(by.repeater('alert in alerts'));
rows.last().then(function(row) {
var rowElems = row.findElements(by.tagName('td'));
rowElems.then(function(cols){
expect(cols[0].getText()).toContain('testRunner');
expect(cols[1].getText()).toContain('testing the runner');
expect(cols[4].getText()).toContain('5 minutes');
});
});
Когда я использую свой код, я получаю правильные столбцы, но не правильный ряд, я только получить первый ряд не последний. Есть ли способ подсчета строк и использования этого? – Brian
В моем коде была ошибка. Я использую элемент вместо вяза. Я изменяю имена переменных для ясности. – gontard
Я получаю TypeError: Object [object Object] не имеет метода 'all' error – Brian