运行Karma + Jasmine以使用 real 后端测试angularjs客户端。由于Karma使用自己的express
,但我需要使用DB和其他东西访问真正的nodejs后端,我正在考虑将拦截器添加到$httpProvider.interceptors
中,这将只取代我对/api
的调用并将它们重定向到真正的后端位置。还有更好的方法吗?
答案 0 :(得分:2)
您不希望在单元测试中这样做(我个人甚至不会在E2E测试中这样做。)
进行单元测试时,$httpBackend
与一个无法执行实际请求的虚拟版本交换。那是故意的。你不应该用真正的后端做任何测试。
另一方面,有E2E测试(你在一起测试你的所有系统)你可以在你的测试中使用真正的后端(有些人喜欢它,有些人不喜欢)。
请记住,单元测试完全是关于单元,这意味着您不关心依赖关系,更不用关心后端了。