ale*_*cxe 10 javascript testing selenium angularjs protractor
我们一直在protractor用于端到端测试.
现在我们试图涵盖几个极端情况,其中涉及修改API端点请求的响应 - 为此我们正在使用protractor-http-mock它提供了一种易于使用的方法来用预定义的模拟替换HTTP响应.
但是,如果我们想测试突然发生连接丢失的情况怎么办?在这种情况下我们有什么选择?
换句话说,我们希望实现一种情况,即对特定端点的请求会产生网络连接错误并查看我们的应用程序将如何反应.
我对任何建议持开放态度,我目前正在考虑以下策略:
protractor-http-mock$httpangularjs服务grunt-connect-proxy虽然我不确定是否可以动态地将代理的行为从规范更改为规范,但看起来相当成熟)selenium无法控制的,使用chrome和selenium进行网络限制)(浏览器插件/扩展名?)我希望这可以帮助您定义实现模拟的最佳方式。
该项目解释了总体思路,存在语义和翻译问题readme.md,我很快就会解决这个问题,请耐心等待。请忘记我的英语/拼写错误,让我知道任何更正
我正在做这个演示项目,如何实现Protractor + CucumberJS + Sugar-step。目前它包含一个非常非常简单的 Angular APP 和 3 个 E2E 测试。
该演示正在运行,但尚未完成,仍然需要一些我认为对 E2E 测试有用的功能。
如何为每个场景设置不同的模拟响应?
angular.module('mock-Service-response-x',fn...)在任何功能或场景之前注入a,并在功能或场景运行后将其删除通过这种方式可以测试什么?
为什么要在 AngularJS 中实现 UI-Mocks 而不是使用代理?
UI 控制(当然取决于您的特定需求)使用 Angular 您可以执行以下操作:完全禁用ngAnimations或jQuery动画、模拟您的本地浏览器Date、自动模拟取决于日期的行为。
成本(取决于您的项目)为每个开发环境中的所有 Web 服务实现本地代理的成本可能会很昂贵(在硬件、工作量或实施时间方面)。
依赖性,如果您的开发团队并行工作,则更有可能相互依赖,如果 UI 团队正在开发依赖于 X Web 服务的功能,了解 UI 团队可以创建简单模拟的实现规范继续他的工作,使孔项目更有可能按时交付
所有这些论点取决于您正在处理哪个项目,并不意味着这是最好的解决方案,但我更赞成保持项目层彼此独立,并能够发布新的无论其他层是否在其自己的新功能中延迟,都将其放在某一层中。
对于任何阅读本文的人,我们都非常欢迎任何评论、更正或建议
| 归档时间: |
|
| 查看次数: |
3822 次 |
| 最近记录: |