给定一个 REST 接口的正式规范——比如一个 Swagger 2.0 文件——我想在设计时针对接口本身的一组简单的预定义设计指南对其进行测试。指南由强制(MUST)和非强制(SHOULD、COULD)语句组成,其中只有 MUST 需要强制执行。
事实:
- 编写 API 和相应 Swagger 文件的人不是 REST 专家,尽管他们应该应用上述设计规则,但他们不会这样做 - 至少不完全如此
- 很多 Swagger 文件,所以我需要一个自动工具来实现这个目的。不偏爱任何技术或编程语言
- 验证规则将来可能会改变
例子:
要强制执行的规则:REST API 的任何 URI 都不能包含“进程”一词
测试用例 n.1
# YAML Swagger to be tested
[...]
paths:
/process_user/{userId}:
[...]
# --> Outcome of test against rule: failed
测试用例 n.2
# YAML Swagger n.2 to be tested**:
[...]
paths:
/user/{userId}:
[...]
# Outcome of test against rule**: passed
你知道有什么工具可以完成这项工作吗?