我们的团队正在为我们的项目进行ATDD(验收测试驱动开发)。
我有一个问题。
我编写如下的API测试。
1)创建装置
2)将标头,查询,路径,正文发送到端点。
3)断言状态码,正文等的响应
这是问题!
我应该在验收测试中为例外情况(例如无效的正文字段和值组合)编写所有测试用例吗?
例如,POST /users
收到像{ name: "steve", age: 27, account: "test", password: "test1234" }
这样的尸体
您是否为所有正文输入组合编写测试用例? (如果name
为空,则返回400;如果name
太短,则返回400;如果age
不是数字,则返回400;如果密码不包含数字,则返回400,依此类推。上)
案例太多:(
如果不这样做,能否与我分享如何处理?
答案 0 :(得分:0)
您确实需要涵盖这些案例,但是您不想高级别涵盖所有案例。为了编写快速且可维护的测试,您需要遵循test pyramid编写很多低级别(单元)测试,而很少编写高级(系统)测试。
因此,您要做的是检查单元测试中的所有验证规则(针对每个字段),然后为每个端点仅创建1个高级否定测试以检查是否已调用,并且错误格式正确。