• 12
  • 13
分享
  • 做接口测试,这3种工具到底什么时候用?——软件测试圈
  • 曼倩诙谐 2021-07-09 11:18:50 字数 1263 阅读 3451 收藏 13

  这篇文章会产生,是因为刚好有一个项目,同时用到了这两款工具,而正是工具的使用让我解放了双手,感受到了什么是高效、智能化。

  故事背景

  某个功能模块的测试数据无法通过界面操作,为了模拟出真实的测试场景,开发人员提供了一个内部的接口文档,希望通过接口调用复现真实使用环境。

  这里我大概讲一下测试流程及顺序,首先普及一下什么是Swagger UI。

  Swagger UI

  Swagger是一组开源项目,接口的文档可以在线自动生成,不需要频繁更新接口文档,保证接口文档与代码的一致性。

  这里的实时更新是它的一大优点。试想一下,有些公司基本上使用word维护接口文档,假如出现涉及到接口变更情况,文档更新不及时。

  后面查阅这份文档的人排除报错信息,再加上沟通时间,成本太大。

  人都是懒惰的,这种情况的发生很常见,而且我认为80%以上都会发生。

  那么Swagger UI的产生无疑体现了它的优势。

  使用过程

  输入接口,点击try it out。

2-1.png

  查看测试结果,一般显示200证明调用成功。

2-2.png

  验证过程,查看页面对应接口成功后是否出现图标等信息,或者查看数据库里内容值发生变化。

  思考火星

  在使用过程中,发现Swagger UI的不便利之处是网页打开,很多参数无法保存。

  比如同一个接口可能传好几个参数,存在循环测试的情况,这样我每调用一个新的参数,都需要更改一下,非常不便,于是想到了Postman。

  Postman

  关于Postman如何使用这里我就详细不介绍了。

  大致的过程是来个图比较清晰,5步走:请求方式->路径->格式->参数->发送:

2-3.png

  思考火星

  经过几轮测试发现两个问题:

  1.同一个接口我可能需要调用好几次,能不能点击一次就可以?

  2.整个流程下来部分功能有顺寻可以执行,这样我是不是可以按流程测试呢?

  有了这个想法之后发现这正是JMeter可以解决的么!

  JMeter

  总所周知,JMeter最常用的使用场景是测试性能。

  那么,做接口和做性能最主要的区别在于设置并发数的时候我们可以把次数改为1,这样相当于只循环了一次。

2-4.png

  流程这个问题可以新建几个接口记录,通过enable、disnable决定执行的时候执行哪条接口。

2-5.png

  配置多个参数

  怎样实现一个接口调用多个参数呢,这里我们使用调用csv文件,把参数内容写到csv文件内即可。

  新建csv数据文件设置、选择路径、填写调用的参数名,下面两张图的参数名称要保持一致。

2-6.png

2-7.png

  总结

  最后,以表格的形式总结下这三个接口测试工具的特点:

2-8.png

  人类在历史悠久的发展史上一共经历了4次革命,目前我们所处的时代就是第4次革命-智能化。

  软件行业亦是如此,紧跟时代的潮流,发现自身的价值是我们的使命与价值所在。技术的更新迭代都是人们认识到当前的工具无法满足人类的需求,我相信有一天会有比JMeter更智能的测试接口的工具。

  如果你还知道更智能的方式,欢迎底部留言区留言讨论~



作者:桃子   

来源:51Testing软件测试网原创

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 一、简介 一般程序中A类的m1方法调用B类的m2方法,而B类的m2方法又调用了C类的m3方法以此类推等等,而其中的某个方法的一些数据又需要调用其它服务或者查询数据库,一般单元测试只针对某个功能进行测试,但是如上面的情况在做单元测试时受程序结构、环境等条件限制就会变得非常复杂。mock可以模拟对象返回方式来解决与该单元功能不相关的依赖关系,即模拟B类的m2方法返回结果来进行A类的m1方法单元测试,排除受到B类C类等其它不相关因素的影响。二、使用mock做单元测试的优点1、效率高就是跑Java代码,不需要启用Spring及连接数据库。2、TDD(测试驱动开发)即先编写单元测试用例,根据单...
            0 0 2411
            分享
          •   尽管有报道称苹果公司今年至少发生了四次较小规模的裁员事件,但 2024 年苹果公司的员工人数仍有所增长。苹果公司在上周提交的文件中披露,截至 9 月底,该公司在全球拥有约 16.4 万名全职员工。 这一数字高于苹果一年前公布的 16.1 万名全职员工。 这些数字包括公司员工(如软件工程师)和零售店员工。  苹果公司目前的员工人数与 2022 年持平,而去年则略有下降。  根据苹果公司的文件,该公司各年的全职员工人数如下:  · 2024:164000  · 2023:161000  · 2022:164000  · 2021:154000  · 2020:147000  · 20...
            0 0 174
            分享
          • 在测试银行系统接口交易时,除了要关注系统本身的功能之外,主要需要特别注意以下内容:一、测试一些反向的案例,比如账户类型为销户、冻结,或是账户和币种不一致等情况。另外,每个系统在程序设计时,使用的分隔符不一样,在测试输入要素时一定要测当输入内容包含系统分隔符时,系统是否正常,如:竖线(|),单引号('),空格等。二、在测试新系统的时候,可以使用数据库设计手册对照着实际的数据库字段去看,要注意主键的设置、字段类型以及字段长度。这种对照表结构的测试方法比每个字段去逐一编写案例及测试更高效。在进行关联系统接口交易测试时,要注意每个系统的相关字段长度保持一致,如A系统的表结构中,户名字段长度设置...
            1 3 3258
            分享
          •   最近在做接口测试,因为公司有使用jmeter做接口测试的相关培训资料,所以还是先选择使用jmeter来批量管理接口,进行自动化测试。话不多说,进入正题:  1.使用csv文件保存接口测试用例,方便后期对接口进行维护(先新建txt文件,然后文件扩展名改为.csv,不要新建xls再改为csv,不然会出现读取不到文件的情况)。  注意:这里并没有在接口层面进行业务逻辑验证,只是单纯地验证每个接口的各种可能情况(根据参数值不同设计用例),确保单个接口的有效性。  2.写好测试用例后,设计jmeter脚本  ①新建一个线程组,并在线程组下添加HTTP请求默认值和监听器。  HTTP请求默认值中填写服...
            11 12 2147
            分享
          •   笔者所在项目经历了一个月开发周期,该项目有5名开发人员,1名项目经理,1名测试人员,涵盖OA系统8个模块,在短短1个月中进行了5次发布。  现进行模块测试策略分类归纳。  已有模块  配置项优化  对于已有模块的配置项优化,开发的主要工作是在流程后台和系统模块配置模块中配置对应的适应各单位用户的流程。  测试的策略在于流程测试,理论上配置不改动代码不会影响原功能,于是在流程测试过程中顺便完成了回归测试。  在大家都认为没有问题的信息模块,测试过程中却发现审批不通过时会报错。  测试流程的主体思路是覆盖正向流程和反向流程,在测试过程中尤其要注意反向流程,包括审批不通过时流程流转到原审批节点,...
            0 0 720
            分享
      • 51testing软件测试圈微信