我们可以监视API响应中的特定文本,例如(Name = abc)并在Postman中得到通知吗?

时间:2019-05-30 07:20:06

标签: api postman monitoring web-api-testing

API测试: 目前,我正在使用Postman测试API响应 我想监视API响应中的特定文本并获得通知,例如-

{
    "productname": "PARLE",


    "customer": "ABC",
}

如果我在API响应中以ABC的形式获得了一个客户名,我想通过邮件或闲置或其他方式得到通知。

这可能吗?如果是,请分享给我。

2 个答案:

答案 0 :(得分:0)

您可以使用Overseer之类的软件运行定期测试,并使用Notify17通知模板接收通知(请参见示例recipe)。

您可以使用以下测试规则:

http://myurl.com/path must run http with not-content '"customer": "ABC"'

要轻松使用Overseer,您可以查看Kubernetes deployment example

答案 1 :(得分:0)

您可以按照以下步骤使用Postman Monitors发送电子邮件或发送松弛消息来实现用例:

  1. 配置显示器以使其在环境中运行。 (参考:https://learning.getpostman.com/docs/postman/monitors/intro_monitors/
  2. 在“集合的请求”的测试脚本中,使用pm.response.json()获取响应(基于您提到的响应结构)
  3. 使用以下代码段确定响应是否包含所需内容:

    if (pm.response.json().customer === 'ABC') {
        // no op
    }
    else {
        postman.setNextRequest(null);
    }
    

    在这里,如果不满足条件,那么将要执行的下一个请求是null,这意味着收集执行将在此处停止。但是,如果满足条件,则不会设置该条件,并且将执行下一个请求。

  4. 您可以使用各种公共API来完成诸如发送电子邮件或发送松弛消息之类的任务:

    Gmail API | Slack API

    在当前请求下方创建一个名为“发送通知”的请求。使用提供的文档来设置请求。

  5. 当显示器运行时,如果不满足条件,则postman.setNextRequest将设置为null,并且“发送通知”请求将不会运行。但是,如果条件 确实为true,则请求将运行,并且您将在相应的通道上收到通知。