【发布时间】:2013-11-24 17:36:44
【问题描述】:
我有一点问题。我正在尝试针对 Recurly API 进行开发,但我似乎找不到任何方法来使用测试帐户或测试网关以及实时运行的 Recurly 帐户。
似乎他们唯一能做的就是在我运行测试时破坏我们的网站。它似乎不太可能设计得那么糟糕,但我找不到这样做的方法。其他人有解决方案吗?
【问题讨论】:
标签: unit-testing tdd integration-testing payment recurly
我有一点问题。我正在尝试针对 Recurly API 进行开发,但我似乎找不到任何方法来使用测试帐户或测试网关以及实时运行的 Recurly 帐户。
似乎他们唯一能做的就是在我运行测试时破坏我们的网站。它似乎不太可能设计得那么糟糕,但我找不到这样做的方法。其他人有解决方案吗?
【问题讨论】:
标签: unit-testing tdd integration-testing payment recurly
我们通常建议创建一个仅用于开发和测试的第二个站点。然后正如@atif 建议的那样,您可以使用单独的 API 密钥进行测试和开发,而不必担心影响您的生产站点。这种方法的一个缺点是您需要重新创建您在测试中使用的任何计划和优惠券。
您可能需要不同级别的测试。您将需要一些实际上与我们的服务器集成的测试、创建帐户、进行订阅等您不经常运行的测试,因为它们会更慢。对于您的大多数测试,我会尝试遵循@ryan1234 的建议并使用 stub/mock/fixtures 来处理远程请求。这将使测试速度更快。
【讨论】:
我会在您的代码和 Recurly API 调用之间创建一个接口。
所以逻辑会这样:
应用程序代码 -> 接口 -> 循环 API 调用。
那么测试的步骤是这样的:
关键点是可能无法进行真正的集成测试,但可以测试您是否在自己这边生成了正确的请求。
那么只要他们的 API 保持不变,您就可以快速准确地进行测试,而无需走线。
【讨论】:
如果您的应用程序中有重复使用的帮助文件,请在测试时使用 reculy 的开发 api 密钥在生产环境中进行更新,当您希望站点作为实时站点工作时,然后再次分别更新到生产环境。
【讨论】: