API 自动化 - 条件测试

WHO

在你阅读它之前,我是个菜鸟,抱歉。

我有一些端点将根据调用此端点的次数返回不同的状态。它将返回状态 200 或 409 以及一些额外信息。对于后一种情况,它将返回如下内容:

{
    "error": {
        "code": "ABC",
        "message": "ABC",
        "target": null,
        "innerError": null,
        "details": null
    }
}

如果状态等于 200 或 409 并带有“message”:“ABC”,我希望测试通过。

我一直在以不同的方式尝试它,但我一直坚持下去。我最近的尝试如下所示:

pm.test("Status is 200 or ABC", function () {
    if(pm.response.code !== 200)
    {
    var jsonData = pm.response.json();
    var expectedObject = {
    "message": "ABC"

    }
    }
    else
    {
        (pm.response.to.have.status(200))
        console.log("Success")
    }
});

即使状态不是 200 并且正文不包含“消息”:“ABC”,它也会通过此测试。

关于我如何做到这一点的任何想法?

爱丽儿

您必须进行某种类型的检查才能通过/失败测试。条件应该是这样的:

var jsonData = pm.response.json();
// expecting that jsonData.message will be equal to "ABC"
pm.expect(jsonData.message).to.eql("ABC")

如有疑问,请查看文档

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章