是否可以在不同的Api测试用例中重用Postman脚本?

时间:2017-01-12 09:08:33

标签: postman newman

我们的项目中有一种情况,我们需要在不同的Api测试用例中访问相同的方法。目前我们在每个Api测试用例中都复制粘贴了所有这些方法。是否可以通过常用方法制作这些方法并从中进行访问?

可以将这些方法存储在Global变量中。它在Postman中可以正常工作,但在纽曼跑步时失败了。

1 个答案:

答案 0 :(得分:2)

你有两种方法可以解决这个问题 - 他们都是" hacky"而且我的意思是它们是Postman允许你为其他目的做的副产品。

  1. 创建一个函数并将其分配给窗口对象的变量 - there's an example in one of the the GitHub threads on the Postman project。引用:
  2.   

    我发现一个hackish解决方法是包装你想要分享的功能   跨越全局对象内的测试。在您的第一个预请求脚本中   它看起来像这样:

    // window.{name of wrapper}
    
    window.Utils = {
    
        percentChange: function(val1, val2) {
    
            return (((val1 - val2) / val2) * 100).toFixed(2) + '%';
    
        }
    
    };
    
      

    在没有调用该函数后运行的所有测试中   需要放置窗口'在它之前

    Utils.percentChange(responseTime, newTime);
    

    我实际上无法设法让它工作,而且我的情况不可行,因为我想创建一个只定义一次然后在任何请求中可用的框架。

    1. 一位博主 - 抱歉我现在找不到原来的博文 - 提出了一种我最终成功使用的方法。 编辑:The almost exact solution is showcased on a blogpost (TIP #5: reuse code)在邮政官方博客上。

      2.1创建可重用的代码,然后将其存储为环境或全局变量。

      2.2在预先请求或测试脚本中,对您在上一步中定义的变量调用eval

    2. NB :这两种方法都存在一个主要问题 - 调试问题或更改已存储的可重用代码。当我需要确定可重用代码的不一致行为来自哪里时,我一直在努力解决这个问题。基本上,我最终使用了console.log。