zoukankan      html  css  js  c++  java
  • 接口测试-postman,JMeter与LoadRunner比较

    postman是一个谷歌出的轻量级的专门测试接口的小工具~(PS:postman包括两种:Chrome浏览器插件和postman客户端,我使用的是postman客户端)虽然不如firefox的poster插件“轻量”,但是比firefox的poster插件、fiddler的接口测试功能更全面,比Jmeter更轻量、便捷~

    一、JMeter 介绍

         Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能。
         同时,JMeter可以帮助你对你的应用程序进行回归测试。通过你创建的测试脚本和assertions来验证你的程序返回了所期待的值。为了更高的适应性,JMeter允许你使用正则表达式来创建这些assertions.

    JMeter与LoadRunner比较

    JMeter 是一款开源(有着典型开源工具特点:界面不美观)测试工具,虽然与LoadRunner相比有很多不足,比如:它结果分析能力没有LoadRunner详细;很它的优点也有很多:

    •   开源,他是一款开源的免费软件,使用它你不需要支付任何费用,
    •   小巧,相比LR的庞大(最新LR11将近4GB),它非常小巧,不需要安装,但需要JDK环境,因为它是使用java开发的工具。
    •   功能强大,jmeter设计之初只是一个简单的web性能测试工具,但经过不段的更新扩展,现在可以完成数据库、FTP、LDAP、WebService等方面的测试。因为它的开源性,当然你也可以根据自己的需求扩展它的功能。

     两者最大的区别:jmeter不支持IP欺骗,而LR支持。

    JMeter缺点

      使用JMeter无法验证JS程序,也无法验证页面UI,所以要须要和Selenium配合来完成Web2.0应用的测试。

    我觉得我比较喜欢postman的两个功能点,一个是它的批量执行、一个是它的查看源码功能。下面与大家分享一下~

     

    今天分享的是postman如何批量执行接口测试用例~其实很简单,但是会给我们的工作带来很多方便~比如我们写了几十个测试用例,请求都是同一个服务器IP,一旦服务器IP地址从测试环境搬到线上环境,需要修改所有的服务器IP,如果不能将测试用例保存起来,统一修改服务器IP ,并且批量执行,那将是一件很麻烦的事情!可是postman帮助我们完美地解决了这个问题~具体操作请见下文~

    .创建测试用例集、子集

    如下图,

    点击postman左侧Collections下面有个添加文件夹图标,就可以创建测试用例集,一个系统、模块或其他分类粒度的测试用例可以存放在该目录下

    另外,该目录下还可以创建子目录,进行测试用例的细分,如下图: 

    .创建测试用例

    创建接口测试用例,即新建http请求,选择请求方式、写好url、请求头、请求体

    .设置变量

    postman的变量和Jmeter的参数化相似,即把若干处出现多次的数值用一个变量表示,达到一次修改、多处生效的效果,便于修改和管理。

    点击postman上方一个按钮,点击Globals后面的Edit按钮,添加全局变量

     

    点击右下角Add按钮,添加Environment Name,Key值写变量名称,Value值写变量对应的数值,点击Save按钮进行保存

     

    Value值出现过的地方用{{key}}代替,比如以上面的截图为例,出现http://172...57:8080的位置使用“{{baseURL}}”代替

     

    .添加响应处理

    响应处理有点类似Jmeter里的检查点,即通过检查响应数据是否符合预期来判断test是否通过。在Tests中添加检查条件,postman提供了一些常用的检查条件的代码,直接添加或稍加修改即可。如:响应数据的状态码为200,则判断测试通过,则在代码片中选择“status code:code is 200”

     

    tests["测试Response包含星期三"]=responseBody.has("10日星期三")
    tests["测试Response包含星期三"]=responseCode.code === 200;

    https://www.apiopen.top/weatherApi?city=%E9%83%91%E5%B7%9E(郑州)

    .批量执行测试用例

    点击测试用例集中的“run”,批量运行测试用例,弹出collection runner,点击“Start Run”,批量运行测试用例

     

     

    运行后,弹出测试结果,显示测试通过和失败的个数、请求URL、请求头、请求体信息,响应头、响应体信息,状态码等,我们就可以查看测试用例的执行结果及具体信息啦~

     

  • 相关阅读:
    写一个函数的程序,判断是否是浮点数
    写一个函数,输入一个数,随机生成N条邮箱
    day4-python基础知识 <元组&&集合>
    day4-python基础知识<文件操作>
    程序--用户登录--<while循环>
    程序--<猜数字小游戏>--for
    使用ajax后提交事件后禁用按钮,事件执行完毕后,重新启用按钮
    ajax在弹出对话框中实现一个UpdateProgress进度条控件源代码
    运算符的结合性
    匿名方法
  • 原文地址:https://www.cnblogs.com/gdf456/p/10682281.html
Copyright © 2011-2022 走看看