<分区>
我正计划为 REST-ful API 编写单元测试,我想知道我应该采用的方法。
我最关心的方面与数据库状态有关。我的理解是,测试目标的环境或初始状态对于每个测试应该是相同的,这意味着数据库对于每个测试也应该是相同的。当我有一个繁重的数据库时,我该如何实现?另外,我如何处理数据库架构中的任何更改?
标签 php unit-testing rest
<分区>
我正计划为 REST-ful API 编写单元测试,我想知道我应该采用的方法。
我最关心的方面与数据库状态有关。我的理解是,测试目标的环境或初始状态对于每个测试应该是相同的,这意味着数据库对于每个测试也应该是相同的。当我有一个繁重的数据库时,我该如何实现?另外,我如何处理数据库架构中的任何更改?
最佳答案
问题是你想测试什么。您认为什么会在最顶层的 api 层(即接收 HTTP 请求的层)中断?
通常编写单元测试 restful-api 听起来有点矛盾;)根据定义,单元测试比使用入口点 HTTP 到数据库要小得多。听起来您的问题更多是基于如何编写大型测试(或验收、端到端测试)。
请注意,实现此类大型测试(端到端测试)需要付出很大的努力:
根据我的经验,测试粒度的多样性为王,因此我混合/组合方法:
也许您可以针对要测试的特定用例提供更多意见,以便提供更多帮助?
关于php - 为 REST-ful API 编写单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7380903/