Sim*_*lan 5 php rest phpunit response mocking
我正在编写一个围绕第三方 API 的 PHP 包装器。对于练习来说更是如此,但我也没有看到目前任何地方都可以使用的好方法,所以将来可能会被其他人使用。
我的单元测试非常简单,但现在我已经达到了极限。
API 的开发人员有一个最大请求限制(每秒 1 个,每分钟 20 个),我的单元测试通过我的 API 包装器访问 API 端点,因此测试了我的包装器。但是运行phpunit已经开始返回429 too many requests错误。因此,Phpunit 显然正在运行我拥有的 15 个左右的测试,所有这些测试都过快地访问端点并给我这个错误。
有人知道我是否a) 应该嘲笑这些响应,以及b) 如果我正在测试我的包装器,我将如何模拟这些响应?. 如果测试不在我的实际包装器对象上运行并且我肯定不想让我的包装器使用模拟响应,那么测试有什么用?
我是单元测试的新手,目前我对这个想法感到非常不舒服,但是我开始接受它!
很好的问题!当您不熟悉测试时,这是一个常见问题。
首先,区分单元测试和集成测试:
我会做以下事情:
模拟响应是一件棘手的事情。如果有一天你尝试这样做,当 3rd 方 API 发生变化时,你会遇到麻烦。如果您仍然想走这条路,请查看https://github.com/coduo/tutu。
| 归档时间: |
|
| 查看次数: |
1569 次 |
| 最近记录: |