Я получил регулярный (не JS) якорный тег, ссылки на внешний сайт, но с дополнительным поведением для выполнения по щелчку, который изменяет DOMTest нг нажмите на обработчик тега привязки
<body ng-controller="MyController">
<a href="https://www.google.co.uk/" ng-click="inProgress = true">
{{ inProgress ? "Going to Google" : "Go to Google" }}
</a>
</body>
I хотел бы проверить это поведение в тесте транспортировщика E2E. Однако, похоже, что после нажатия ссылки последующие команды запускаются в контексте внешней страницы. Например, следующий тест пройден:
browser.element(by.css('a')).click();
expect(browser.getCurrentUrl()).toBe('https://www.google.co.uk/');
, но следующий тест не
browser.element(by.css('a')).click();
expect(browser.element(by.css('body')).getText()).toBe('Going to Google');
с отказом показывает содержание домашней страницы Google, как текст body
.
Как проверить, что происходит после щелчка на теге non-Javascript a
?
Добавить целевые _blank если вы хотите, чтобы ваша ссылка откроется в отдельном окне, в противном случае тест правильно потерпеть неудачу, вы HTML исчезают, когда вы нажимаете на ссылку – floribon
@floribon На данный момент, я не хотите, чтобы ссылка открывалась в новом окне, но я хочу проверить, что пользователь видит изменение текста в ссылке после нажатия на нее. –
вы можете использовать JQuery triggerHandler и протестировать этот сценарий. 'browser.element ('a'). triggerHandler ('click')' –