我们有一个庞大的项目,我们编写了很多测试用例,在我们的 e2e 功能测试用例中涵盖了很多真实场景的用户行为。
随着测试的进行,它会进行大量的休息调用来完成测试用例。当我们在酱汁实验室中覆盖不同的浏览器时,它会增加 5-9 倍。
我想要的是模拟所有其余的调用,以便不会对实际服务器进行任何真正的调用,但会在内部对其进行处理。它用于功能性 e2e 测试而不是单元测试,因为我们使用 jasmine 模拟了所有单元测试spyOn
.
我探索过json-server
and $httpBackend
的量角器。 son-server 不适合,因为它不能很好地处理应用程序发布、放置、删除调用。如果是 $httpBackend
我已经经历过这个帖子 https://stackoverflow.com/questions/16807130/mock-httpbackend-in-angular-e2e-tests它适用于 andularJs 应用程序,而不是 Angular 应用程序,而且它的全部内容都是针对 AngularJs 的单个休息调用模拟,而不是针对所有休息调用。
还看了这个 angularjsAngularJS 的多模拟 https://github.com/wongatech/angular-multimocks它也适用于 AngularJS,而不是 Angular,看起来这改变了查询参数的原始剩余 URL。
Angular 2+ 应用程序的 Protractor 尚不支持模拟网络调用。看这个帖子 https://stackoverflow.com/a/36457515/7170335和相应问题 https://github.com/angular/protractor/issues/3092在 github 上。
就我个人而言,我用过ng-apimock https://github.com/mdasberg/ng-apimock用于使用代理模拟对后端的所有网络调用的插件。
它工作得非常好并且配置简单。只需遵循 Angular 应用程序的配置即可here https://github.com/mdasberg/ng-apimock/blob/master/ANGULAR_CLI.md
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)