У меня есть тест Protractor, который извлекает различные значения из пользовательского интерфейса и сохраняет их как переменные для сравнения со значениями из другой базы данных.
Теперь этот тест нужно запускать на нескольких сайтах, НО из 25 максимальных данных записано очков, на некоторых сайтах только 22.
Ясно, что тест не проходит на этих «22» сайтах, так как элементы отсутствуют.
Я хочу добиться того, чтобы было «22». site, тесты на отсутствующие элементы игнорируются, и тест продолжается до конца. Удобно, что "недостающие" элементы являются последними в спе c.
Грубо говоря ...
if element-y is not present end test or if element-y is present continue
Благодарен, если кто может посоветовать.
Спасибо @sergey. Я изменил ваш пример, как показано ниже ....
if (!(await element(by.xpath('//*[@id="root"]/div/div[2]/main/div/div/section[5]/div/div/div[1]/section/div/span')).isPresent())) {
console.warn ('Functions are not present, closing the session')
await browser.close()
Я получаю эту ошибку:
if (!(await element(by.xpath('//*[@id="root"]/div/div[2]/main/div/div/section[5]/div/div/div[1]/section/div/span')).isPresent())) {
^^^^^^^
SyntaxError: Unexpected identifier
Я пробовал использовать 'var' вместо фактического элемента, но получите тот же результат. Спасибо