JMeter接口测试之创建任务API

发表于:2018-3-01 08:44

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Fighter.Lu    来源:博客园

  一、创建任务
  POST /api/tasks title/desc接口可以用来创建任务。
  我们下面来实现创建任务的测试用例,该用例的步骤其实很简单,就是调用POST /api/tasks接口,如果创建成功,该接口会访问新创建的task的信息,比如task的id,title和desc等,我们的断言也就是判断该接口的返回值应该包含我们传入的title和desc。
  1.首先我们也是先要鉴权通过才可以创建任务,同样的需要把登陆接口开放。这是需要注意的事情。
  2.需求1:必须要传入一个json的字符串到后台,否则创建的接口后台服务器是不认的(我们后面介绍)。
  3.需求2:创建的正常流程。创建任何的AP接口,post 请求   路径: /api/tasks
  二、发送POST请求到服务器
  第一步:我们首先添加一个HTTP请求,右键线程组,点击如下图选项。并改名为 创建任务,如下图所示:
  然后我们改名为创建任务。如下图所示:
  第二步:同样的因为创建任务是在鉴权登陆成功以后发生的,所以我们需要创建一个HTTP信息头管理器,做法和上一篇的获取所有任务API套路一样,点击创建任务的请求---右键---添加配置元件--添加HTTP信息头管理器(改名为set token)
  第三步:增加Authorzation/Bearer ${token} 获取登陆后的token  (这个很重要!!!没有token无法创建任务成功 会报401的错误)
  第四步:对接口进行入参数,如下图,我们修改Http请求方式为POST  请求的路径是: /api/tasks/   并且在parmameters这一列需要增加两个参数,一个是title  一个是desc,具体操作如下所示:
  第五步:我们运行创建任务的请求。查看结果如下图所示:
  有的时候我们不希望这个title desc参数是写死的,就比如我们上面写的title=xxx desc=123 这样,那么如何才能不让数据写死呢?我们继续往下面看。这里面我们使用jmeter自带的函数助手里面提供的一个 ${__RandomString(,,)} 函数
  然后我们找到创建任务的请求,在title和desc参数这里面做下面的修改,如图所示:
  设置好以后,我们在次运行创建任务请求,查看运行后的结果,如下图所示:
  到此,我们创建任务的接口就完成了,还没有进行断言,相信你看了前几篇的内容断言应该会很简单了,这里小编就步给大家演示了。。。。
  三、发送POST-JSON格式的数据到服务器
  我们在来看我们前面说的需求1:如何向后台服务器传入的接口请求参数是一个json格式的数据呢?因为有的时候服务器只认识json数据其他数据不支持,所以这时候我们需要对json数据传入后台的处理操作做一个补充。。。。这个也很重要的哦!!!请认真看表演哈~~
  第一步:我们依然需要在线程组下面---simple---创建一个http请求并且改名为 “传json格式的数据到服务器“这样是为了从名字上面区分正常发送的情况。
  第二步:我们需要在该请求下面增加一个HTTP信息头管理改名为set token 当然你也可以改名,这个HTTP信息头管理器中需要放两个重要的参数,一个是Content-Type  对应的值是 application/json  另一个就是获取token的变量 Authorization 对应的值是  Bearer ${token}  具体如下图:
  第三步:我们需要在该请求(发送json格式数据到server) 的Body data内容中新增数据,这个新增的数据一定是json格式的(也可以简单理解为python中的字典)其他请求方式和请求的路径不变。如下图所示:
  第四步:设置完成后,运行该api接口,查看结果树如下:
  好了,到此关于创建任务的接口我们就写到这里了~

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号