Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angularjs e2e使用场景测试运行程序进行测试-忽略警报()_Javascript_Angularjs_Angularjs E2e_Angular Scenario - Fatal编程技术网

Javascript Angularjs e2e使用场景测试运行程序进行测试-忽略警报()

Javascript Angularjs e2e使用场景测试运行程序进行测试-忽略警报(),javascript,angularjs,angularjs-e2e,angular-scenario,Javascript,Angularjs,Angularjs E2e,Angular Scenario,我正在为我的应用程序创建e2e测试,在测试登录页面时遇到了一个问题。 我想测试正确的登录和不正确的登录,但问题是,当您输入不正确的凭据时,您会收到一个警报(“您的电子邮件或密码不正确”),并且在e2e测试中也会触发该警报,这意味着我必须单击警报()上的“确定”按钮才能继续测试。 测试中是否有忽略警报()的方法?当然,这不一定符合E2E的条件-但您可以在任何指令、控制器或服务中提取警报,以调用警报()调用,然后模拟该特定服务。下面是一个例子: Javascript var myApp = angu

我正在为我的应用程序创建e2e测试,在测试登录页面时遇到了一个问题。 我想测试正确的登录和不正确的登录,但问题是,当您输入不正确的凭据时,您会收到一个警报(“您的电子邮件或密码不正确”),并且在e2e测试中也会触发该警报,这意味着我必须单击警报()上的“确定”按钮才能继续测试。
测试中是否有忽略警报()的方法?

当然,这不一定符合E2E的条件-但您可以在任何指令、控制器或服务中提取警报,以调用
警报()
调用,然后模拟该特定服务。下面是一个例子:

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>

这不一定再符合E2E的条件了,但您可以在任何指令、控制器或服务中提取警报,并调用
警报()
调用,然后模拟该特定服务。下面是一个例子:

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>

请查看

您可以添加
alertOK()在您的测试中,在警报显示之前,这允许您跳过它。

请查看


您可以添加
alertOK()在您的测试中,在警报显示之前,这让您跳过了警报。

是的,但angular的场景测试运行程序需要此代码,据我所知,我无法模拟/处理其中的服务。。。这是用于单元测试的,我不会被警报打扰。是的,但我需要这个用于angular的场景测试运行程序,据我所知,我无法模拟/处理其中的服务。。。这是用于单元测试的,我不受警报的困扰。