如何在angularjs中测试真实的$ http数据

时间:2014-04-13 02:51:31

标签: angularjs http testing karma-runner protractor

我想测试真实的$ http响应(不使用$ httpBackend)并与我的mock service进行比较,但我仍然不知道什么是最佳做法。这些是问题描述和我提出的解决方案:

问题描述

  1. 我正在创建一个完整的Angular应用和API服务器。

  2. 有时,API开发比前端开发慢。因此,我创建了mock service注入$httpBackendProvider并在请求实际发送到服务器之前返回mock data。此模块不使用$interceptor。我认为它比$interceptor技术更深入。它工作得很好。

  3. 我会考虑测试,因此我关注了karmaprotractormock servicereal api都可以通过protractor测试很好地工作。

  4. API设计更改时PROBLEM开始。带有protractor的{​​{1}}将会失败,但带有real api的{​​{1}}仍然会成功。

  5. 因此,为了确定哪个API出错,我需要在protractormock service之间编写一个比较脚本。

  6. 建议解决方案

    使用量角器测试并创建一个简单的Web服务器,如real api

    我想听听你们的更多信息。谢谢!

2 个答案:

答案 0 :(得分:2)

您应该先测试您的api服务。当您在服务器端测试中断时(由于api更改),您应该更新该测试用例以及客户端测试用例。

确保您拥有API版本控制解决方案,这在您的应用公开部署后至关重要。

答案 1 :(得分:1)

至于开发目的,我喜欢使用apiary.io服务。 这为您提供了一个功能API模型+完整文档,因此您可以将API委托给其他人(我的选择;)