我开始使用 Pact(在 Java 上)进行合同测试。
我已经阅读了关于 Pact 最佳实践的合同测试与功能测试,但我有点困惑。
示例:创建资源 (POST) 的简单 REST 端点,成功时返回 201 Created,语法验证错误返回 400 Bad Request。请求正文类似于:
{
"firstname" : "Foo",
"lastname" : "Bar"
}
双方firstname并lastname不能为空。据我所知,我可以在这里写 3 个场景,其中提供者应该返回 400 Bad Request:
firstname是空白,lastname不是空白
firstname不是空白,lastname是空白
firstname并lastname有两个空白
问题是如果只定义了“快乐路径协议”,模拟服务器会返回 500 内部服务器错误,如果我想让它返回 400 错误请求,我必须编写所有可能的协议。此外,如果我添加具有相同验证规则的另一个字段,则协议数量会激增。
首先,我应该在我的消费者身上测试这些场景吗?
如果是,是否存在使用 Pact DSL 实现它的任何智能方法?
谢谢你。
jeck猫
明月笑刀无情
相关分类