首页 > 其他分享 >(二)接口测试基础认知

(二)接口测试基础认知

时间:2023-02-16 11:35:31浏览次数:34  
标签:认知 校验 接口 用例 测试用例 参数 测试

测试用例设计思路:

从输入参数进行考虑设计:

1)优先级-针对所有接口

1、暴露给其他系统、第三方调用接口

2、系统内部调用的核心功能接口

3、系统内部调用的非核心功能接口

2)优先级-针对单个接口

1、正向测试用例优先,逆向测试用例次之(通常情况下是这样)

2、是否需要满足前提条件>是否携带默认值参数>参数是否必填>参数之间是否存在关联>参数数据类型限制校验>参数数据类型自身的数据范围值限制校验

3)设计分析

从接口测试后端业务逻辑来讲,设计接口测试用例需要考虑以下几方面:

1、是否满足前提条件

有的接口需要首先满足一定条件,才可成功获取数据。最常见的就是需要用户登录信息的接口(用户token)

逆向用例:设计不满足前置条件的用例

2、是否携带默认值参数

正常测试用例:

存在默认值的参数都不填写、不传参,必填参数都填写正确并且存在正确的常规之。这方面考虑设计测试用例

3、业务逻辑、功能需求

这个环节需要根据具体的业务需求,结果接口定义文档,可设计出多条正向用例和逆向用例

4、参数是否必填

针对每个必填参数,设计一条或多条参数值为空的逆向测试用例

5.参数之间是否存在关联

可根据参数之间的相互关联设计一条或多条用例

6.参数数据类型限制

针对每个参数类型设计与定义的类型不符的逆向测试用例

7、参数自身的数据范围值限制校验

针对所有参数,设计每个参数在数据范围内为最大或者最小的正向测试用例:

这对所有参数,设计一条或者多条参数值超过或者小于数据范围的逆向测试用例

总结:如果以上几个方面考虑全面的话,基本可覆盖以下三点:

a、主流测试用例:正常的主流程业务需求校验

b、分支流程测试用例:正常的分支流程需求校验

c、异常流程测试用例:异常业务场景的容错校验

8.从输出参数进行考虑设计:

1)输出结构是否与接口文档定义的一致

2)输出的各个字段类型是否与接口文档定义的一致

3)输出的各个字段的值是否符合逻辑且值正确

9.测试环境:

进行接口测试之前首先需要与开发确认好测试环境,通常情况下,需要在三个环境进行测试:测试环境、准生产环境及生产环境

10.测试方式:

1)手工测试:手工测试就是借助浏览器或者部分测试工具(postman、Jmeter等)手动执行测试用例的过程。针对新开发接口建议首先进行全面的手工测试后再将部分可重复执行用例加入自动化测试

2)自动化测试:接口测试相对容易实现自动化,且相对UI自动化也比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,是支持后端快速发版需求,达到低成本高收益的根源

接口自动化测试同样需要有需求分析、用例设计,依据用例设计使用python或者java等语言结合框架,编写自动化测试脚本,实现接口自动化测试、自动执行及自动发送测试报告等环节

一个好的接口自动化测试框架应该涵盖以下几点:

a)流程方面:在回归阶段加强接口各种场景的覆盖度,并逐步向系统测试,冒烟测试阶段延申,最终达到流程自动化

b)结果展示:更加丰富的结果展示、趋势分析,质量统计和分析等

c)问题定位:报错信息、日志更精准,方便问题复现与定位

d)结果校验:加强自动化校验能力,如数据库信息校验

11.其他关注点

以下者部分测试同业务逻辑测试同等重要,甚至从某种意义上讲,比业务逻辑测试更加重要,测试过程中不容忽视

接口后端测试其他关注点:

1)技术性用例设计:数据库存储逻辑、缓存逻辑、消息队列逻辑、数据处理、消费逻辑

2)技术方案用例设计:发布流程方案验证、数据迁移方案验证、服务迁移方案验证、日志输出方案验证

标签:认知,校验,接口,用例,测试用例,参数,测试
From: https://www.cnblogs.com/csfsz/p/17125926.html

相关文章

  • jmeter的阶梯式加压性能测试 jp@gc - Stepping Thread Group (deprecated)
    当测试需求要求是阶梯型的压力测试场景时,使用该线程组。比如测试场景是  从100并发开始,每60s加压50并发,直至达到目的并发数(中途发现问题随时停掉),之后保持每60s停止50......
  • 软件测试新人如何提升自己?
    首先要熟悉部门业务,了解目前一共有哪些项目,你可能会投入哪个项目,这样就可以有优先级的看需求。看需求一定要仔细,如果看不透彻,很容易漏掉测试点,或者发现不了需求存在的......
  • 如何提升软件测试的价值?
    日常我们测试的项目都是时间紧急,导致需求或设计都可能存在一定的问题;或是bug或是未考虑周全,或是描述不清。开发写代码过程也会出现遗漏、错误或到了时间节点未进行联......
  • 实现Runnable接口
         ......
  • 接口测试经验
    问题:1)为什么要做接口测试2)接口测试需要用到的流程和工具3)接口测试点编写的思路4)接口出现问题如何定位5)接口疑问  答案:一、为什么要做接口测试 a)提升测试工作......
  • 对于前几天进行的课堂测试的错误的更正的理解(期待指正)
    有关更正内容的描述本次更正内容,主要是对于用户权限管理的改正,也是我第一次做这样的题目类型具体实现第一项--实现权限列表所谓权限,也就是用户的菜单项,即登录之后,进入......
  • 11.3编写测试用的输入输出程序
       由于用汇编语言编写程序比较麻烦,因此这里我们采取再C语言源代码中插入助记符的方式来实现。在大部分C语言的处理(编译器的种类)中,只要使用_asm{和}括起来,就可以在其......
  • mysql的性能的一些测试
    测试平台mysql8.0.31,2核心4线内存2G的虚拟机硬盘ssd,下面测试结果的瓶颈很多都来自这2G的内存。char比verchar块?首先说结论,差不多,没区别,别信谣110W数据,无......
  • 超详细!Jmeter性能测试
    前言性能测试是一个全栈工程师/架构师必会的技能之一,只有学会性能测试,才能根据得到的测试报告进行分析,找到系统性能的瓶颈所在,而这也是优化架构设计中重要的依据。测试流......
  • jmeter做性能测试
    一、线程与进程一个软件/程序,是以进程的方式存在的,一个进程可含多个线程(一个软件可以做多个事情,就是基于线程而实现的)二、并发的基本概念并发:并发用户数:同一时刻,服务器......