【问题标题】:AngularJS Protractor E2E MockingAngularJS量角器E2E模拟
【发布时间】:2014-02-12 11:45:55
【问题描述】:

我有一个 Angular SPA 从节点后端检索其数据。 由于节点项目完全覆盖了测试,我想模拟 Angular HTTP 调用。 (我不想开始讨论一般的功能/烟雾测试,谢谢)。

我想要的是……像这样

Api = $injector.get('Api');
sinon.mock(Api, 'getSomethingFromServer').andRespondWith({foo: 'bar'})
assert(Api.getSomethingFromServer.wasCalledOnce);

但无论如何我都找不到好的解决方案。 我发现了几个关于同一问题的帖子。 对于example this one

由于量角器变化很大且频繁,我只想在这里问一下任何人是否找到了模拟 HTTP 请求的适当解决方案。

【问题讨论】:

标签: api angularjs mocking protractor angularjs-e2e


【解决方案1】:

我们目前正在使用 http://apiary.io
除了能够“模拟”您的响应之外,您还可以获得一个很好的 API 描述作为奖励! 我们所做的是针对代理运行 Angular 应用程序,这取决于我们是在开发中还是在生产中,可以转发到真正的后端或 apiary 提供的后端。

【讨论】:

  • 它看起来是一款不错的软件,至少值得深入研究一下。但我很不情愿地构建一个单独的 API 服务器。从我的角度来看,这似乎是太多的开销。不过谢谢你的链接。
【解决方案2】:

我同意之前的回答。频繁更改量角器的一个解决方案是完全将后端与被测系统去关联,无论它是模拟的、存根的还是假的。

困难在于保持与真实后端的强一致性,但并不是说它比尝试保持一种不断变化的 Angular 模拟方式开销更大。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-26
    • 2019-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多