我正在寻找一种简洁的方法来为Web服务的单一非幂等方法编写测试。到目前为止,我找不到令人满意的方法来解决这个问题。
例如,我有一个DELETE方法,它删除数据库中的实体。如果成功删除给定实体,则返回200。在测试中,我使用特定的实体ID调用它,然后将其删除。在第二次测试运行的情况下,它将失败,因为该实体不再存在。
要解决这个问题,我需要放置,例如测试中的POST调用,在删除之前创建实体。但那混淆了我的API测试。因此,如果我遇到测试失败,我无法确定POST方法或后续DELETE是否失败。如果可能的话,我只希望在一次测试中调用一个端点。
有没有更好的方法来解决这个问题?是否存在标准模式?