第三方Web服务调用的单元测试旁路

时间:2013-02-23 22:51:34

标签: php unit-testing symfony

我正在为使用Symfony2构建的REST API编写功能单元测试。 REST API的一部分检查针对第三方Web服务的HTTP基本身份验证。

这对单元测试提出了一些挑战,因为我无法为第三方Web服务创建临时用户。

我可以硬编码凭证,但我正在考虑另一种方法。如果环境为test,那么在某些逻辑中硬编码会使第三方API调用短路,这是不好的做法吗?有没有更好的方法来做这样的事情?我确定其他应用程序都面临这个问题。

1 个答案:

答案 0 :(得分:2)

最佳做法是:

  • 将身份验证与新类中的第三方WS隔离
  • 为您的测试制作该类的模拟
  • 使用dependency injection以便您进行单元测试,您可以使用模拟