2013-11-01 28 views
1

我正在爲我的應用程序創建e2e測試,並且在測試登錄頁面時出現問題。 我想測試正確的登錄和不正確的登錄,但問題是,當您輸入不正確的憑據時,會收到警報(「您的電子郵件或密碼不正確」),並且這也會在e2e測試中觸發,這意味着我擁有單擊警報()上的「確定」按鈕以繼續測試。 有沒有辦法忽略測試中的alert()?Angularjs e2e測試場景測試運行器 - 忽略警報()

回答

0

當然,這並不一定符合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> 
+0

是的,但我需要這個角度的場景測試運行器,並從我知道我不能嘲笑/處理那裏的服務......這是單元測試,我沒有被警報打擾。 –