Я создаю тест e2e для своего приложения, и у меня возникла проблема при тестировании страницы входа. Я хочу проверить как правильный логин, так и неправильный, но проблема в том, что когда вы вводите неправильные учетные данные, вы получаете предупреждение («Ваш адрес электронной почты или пароль неверен»), и это также срабатывает в тесте e2e, что означает, что я должен нажмите кнопку «ОК» в предупреждении (), чтобы продолжить тест. Есть ли способ игнорировать alert() в тесте?
Тестирование Angularjs e2e с помощью средства запуска тестов сценариев — игнорировать оповещение ()
Ответы (2)
Пожалуйста, взгляните на https://github.com/katranci/Angular-E2E-Window-Dialog-Commands
Вы можете добавить alertOK();
в свой тест, прежде чем будет показано предупреждение, и это позволит вам пропустить его.
person
Piotr Kozlowski
schedule
06.02.2014
Конечно, это больше не обязательно будет квалифицироваться как E2E, но вы можете абстрагировать оповещение для службы в любой директиве, контроллере или службе, имеющей вызов alert()
, а затем просто издеваться над этой конкретной службой. Вот пример:
JavaScript
var myApp = angular.module('myApp', []);
myApp.factory('alert', function () {
return function (message) {
alert(message);
};
});
myApp.controller('MyController', function ($scope, alert) {
$scope.alert = alert;
});
Просмотреть
<body ng-app="myApp" ng-controller="MyController">
<div ng-init="alert('test')"></div>
</body>
person
Jesus is Lord
schedule
01.11.2013
Да, но мне это нужно для запуска тестовых сценариев angular, и, насколько я знаю, я не могу издеваться/обрабатывать сервисы там ... это для модульного тестирования, где меня не беспокоит предупреждение.
- person Adrian Neatu; 02.11.2013