我们有一个庞大的项目,我们已经编写了许多测试用例,以涵盖我们的e2e功能测试用例中的许多真实场景用户行为。
随着测试的进行,它进行了大量的rest调用来完成测试用例。当我们在酱汁实验室中覆盖不同的浏览器时,它会成倍增加5-9倍。
我想要的是模拟所有的rest调用,这样就不会有任何对实际服务器的真正调用,但在内部它将被处理。它用于功能e2e测试,而不是单元测试,因为我们使用jasmine spyOn模拟了所有的单元测试。
我已经探索了量角器的json-server和$httpBackend。son-server不适合,因为它不能很好地处理应用程序的post、put、delete调用。如果是$httpBackend
我已经看过this post和它的andularJs应用程序,而不是angular应用程序,而且它的所有内容都是针对angularJs的单个rest调用的模拟,而不是所有的rest调用。
我还查看了这个angularjs multi mock for angularjs和它的angularjs not angular,看起来这改变了查询参数的原始rest url。
发布于 2017-10-16 16:09:51
Angular 2+应用程序的Protractor还不支持模拟网络调用。请参阅github上的this post和corresponding issue。
就个人而言,我使用ng-apimock插件通过代理模拟所有对后端的网络调用。
它工作得很好,配置起来也很简单。只需遵循Angular应用程序here的配置
https://stackoverflow.com/questions/46119433
复制相似问题