使用Jmeter进行APP接口测试经验总结

发表于:2016-12-09 11:29

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

 作者:whorus1    来源:51Testing软件测试网博客

  使用工具:
  Fiddler、Jmeter
  测试步骤:
  1.    确认接口
  从开发人员那里获取接口文档,接口文档应该包括完整的功能接口、接口请求方式、接口请求URL、接口请求参数、接口返回参数。
  如果当前项目没有接口文档,则可以使用fiddler对APP进行抓包确认。
  fiddler对手机进行抓包的方法可以参考:http://blog.csdn.NET/whorus1/article/details/50673740
  在手机上对APP进行操作,然后在Fiddler中可以抓取对应的网络交互信息(一个功能中可能设计多个接口的交互)。在抓取的信息中可以看到接口请求方式、接口请求URL、接口请求参数、接口返回参数。
  2.    在Jmeter中编写测试脚本
  (1)在测试计划中添加一个线程组(在测试计划上右击,添加-Threads-线程组)。
  可以将线程组的名称改成测试项目的名称。
  在性能测试时可以通过配置线程属性中的参数来控制并发用户数:
  线程数:虚拟用户数,即并发数,一个线程表示一个虚拟用户;
  Ramp-Up Period:所有线程启动的时间,单位s。通过这个参数可以设置每个线程间的启动间隔,防止给电脑造成太大性能压力;
  循环次数:测试循环的次数,如果勾选了“永远”,那么所有线程会一直发送请求,直到手动停止运行脚本;
  (2)在线程组中添加HTTP请求(在线程组上右击,添加-Sampler-HTTP请求)。
  可以将名称改为待测接口的名称;
  在Web服务器中填入请求服务器的地址和端口号;
  协议中填入HTTP请求的协议,可以是http或https,我们一般用的都是http;
  在方法中选择HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE;(我们项目中的接口方法使用的主要是GET和PUT,在目前易户网的项目中由于APP不直接和服务器交互,中间有一个统一接口平台,所以GET方法的接口请求也要使用POST进行交互。)
  在路径中填入接口请求的URL;
  请求参数:如果是GET方法的请求,请求参数直接写在URL后面即可;如果是POST的方法,则需要在Body Data中填入包含请求参数的数据(Body Data可以从Fiddler抓的包中获取,将Fiddler抓取的到数据包中Inspectors-TextView中的数据复制到Body data中即可);
  (3)在线程组中添加HTTP信息头管理器(在线程组上右击,添加-配置元件-HTTP请求信息头管理器)。
  配置如下:
  (4)添加监听器(在线程组上右击,添加-监听器-XXX)。
  主要配置完成了,需要添加监听器以查看测试结果。一般我们使用查看结果树和聚合报告查看。
  查看结果树:在结果树中会以树形结构展示每个接口请求的测试结果,包括取样器结果、请求、响应数据,在响应数据中可看到网络侧返回的数据,可以以接口文档中期望返回的参数做比较以判断返回是否正确。在结果树中通过颜色可以直观的看到接口测试的结果,绿色为通过,红色为失败。
  聚合报告:从聚合报告中我们可以获取到比较多的信息,包括接口的响应时间、吞吐量、通过率等,在接口的性能测试中很有用。
21/212>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号