重用模式/模型 apiblueprint 以重复请求其他参数

Reuse of schema / model apiblueprint for repeated requests with other parameters

我试图用 API-blueprint(dredd 作为测试运行器)做的事情是用几乎相同的(复杂的)请求连续两次调用后端。我想做的是为某个端点定义一个输入,并在其中放置一些占位符,如果没有给出参数,可能使用默认值。

喜欢:请求 1,数据集 x,参数 x = 0 => 结果 = 'nothing to do'

喜欢:请求 2,数据集 x,参数 x = 100 => 结果 = 'a whole lot to do'

apiblueprint 是否提供此功能?

搜索过它,模式和模型似乎很接近,但我找不到任何示例实现可以做到这一点。

亲切的问候, 蒂姆

如果我对你的问题的理解正确,你可能想要使用以下功能的组合:

在您的 API 蓝图中将您的两个用例描述为两个单独的事务。然后,您应该能够使用 Dredd 测试它们。为确保您的 API 蓝图是 DRY,请使用属性部分的功能并使用继承或混合。然后,如果您仍然觉得对 Dredd 如何测试蓝图缺乏更坚定的把握,您可以使用挂钩更改发送的内容。 Dredd Hooks 允许您以编程方式增强 Dredd 的行为,它们可以用多种编程语言编写。