提升测试效率?有了这些接口测试用例都不是问题

发表于:2020-10-09 09:38

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

 作者:佚名    来源:今日头条

  在日常工作中,我们主要测试的都是功能板块,如果你想真正了解接口测试,那么这篇文章或许能给你一定帮助。
  1、为什么我们要做接口测试?
  首先,我们先来看看测试金字塔(接口测试是在中间部分,底层是单元测试,最顶端是界面测试)。
  从三者的面积大小来看,单元测试和接口测试,才是重点,而界面测试真的是太少。这个面积,你可以理解为代码覆盖,也可以理解为测试的工作量。
  这里要提出一个观点:现在国内公司越来越重视接口测试了。之前的几年,很多测试资源都放在了界面的测试,今后会逐步放在接口测试功能、性能、自动化和稳定性测试上面。
  白盒测试目前还是开发自己测试,有些大公司,注重软件产品质量,也会安排一些有代码能力的测试人员,去辅助和指导开发人员进行单元测试,共同保证软件的质量。
  2、什么是接口测试?
  这部分内容可以说:前人之述备矣,我就不赘述了。(PS:需要的同学可以回复:接口测试,查看相关文章。)
  3、接口的分类
  在开始做接口测试之前,有必要了解一下接口的分类。这里的分类,主要是HTTP请求方法分类。下面是我们最常见的GET/POST/PUT/DELETE四种方法。工作中接口用到最多是GET和POST方法。
  4、设计接口测试用例
  接下来,我们就一起来聊聊进行接口测试的准备工作。有些同学很好奇,接口测试要流程干嘛?不就是拿着接口文档直接利用接口测试工具测试嘛。
  其实,如果只是三五个接口,你可以这么做一个临时的接口测试。但是,如果是上百个接口,或者,你们公司的这个项目,第一次做接口测试,那么,我们还是很有必要遵守测试的流程。
  1)接口测试的流程
  接口测试和功能测试一样,流程也大致遵守V模型,请看下图。
  一般来说,接口测试左边的每个阶段,每个公司可能都侧重点不同,例如有些公司就没有需求讨论和需求评审这个阶段。不管如何,用例设计,这个是少不了,而且是重点,要花时间的阶段。只有覆盖全面的接口测试用例,才能有比较好的测试接口覆盖率,才会找出更多的接口的Bug
  2)为什么要写接口测试用例
  功能测试用例,大家都写过。接口测试用例,很多人没有写过。在写之前,我们来讨论下,为什么要写接口用例。
  ①理清思路,避免漏测
  ②提高测试效率
  ③跟进测试进度
  ④告诉领导做过
  ⑤跟进重复性工作
  上面五点,结合自己测试实际经验,应该来说是很好理解和认同的。有用例,就有思路,避免漏掉测试点。跟着测试用例走,一方面,可以避免随机测试那种没有目的性的测试,提高测试效率;另一方面,这对领导检查你的工作、同事询问你的进度时有很多便利,也能够提高对接效率。
  3)接口用例设计
  我们在设计接口用例时,主要可以从这四个方面来考虑:功能,逻辑业务,异常,安全。
  ①功能:
  功能是否正常;功能是否按照接口文档实现;
  举例:有些添加到购物车,需要登录才能添加。也就是业务要求不支持游客添加购物车功能,如果设计一个没有登录的用户,然后去测试添加购物车接口,结果接口能添加到购物车,说明功能不正常,不符合需求和接口文档描述。
  ②逻辑业务:
  是否依赖业务;
  举例:该接口调用之前,需要调用登录接口,如果不登录也能请求数据,不符合业务规则。
  ③异常:
  参数异常和数据异常;
  参数异常:关键字参数,参数为空,多,少参数,错误参数;
  数据异常:关键字数据,数据为空,长度不一致,错误数据;
  举例:不管数据异常还是参数异常,测试点差不多,一个参数有key和value,key表示参数,value表示数据。
  第一,看看参数和数据能不能支持关键字,例如Java中的保留关键字等等;
  第二,就是参数和数据都为空,看看是否做了判断;
  第三,参数多和少,例如有两个参数的接口,你需要设计一个三个参数的用例,一个只有一个参数的用例。数据那边长度不一致,例如设计很长的字符串是否支持,因为数据库创建表过程都设置好了每个字段的长度。输入错误的参数和数据,例如故意输出单词等等。
  ④安全测试用例设计:
  cookie:有cookie才能获取数据,如果不带cookie还有信息返回,说明有问题
  header:正常接口带header信息,删除header看是否能够返回数据。
  唯一识别码:app手机识别码,一般是唯一的。
  注:安全测试主要从上面三点检查。第三个是唯一识别码,主要是指app上手机的识别码,一般很少用到,除非很严格的接口测试,例如银行app登录,需要指纹,而指纹来源手机,一般有一个手机识别码判断过程。

  上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号