目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
接口测试用例维护
接口项目在测试维护过程中普遍需要面对的问题如下:
1、问题:接口列表中的接口不唯一
问题:
由于开发提供接口列表的方式不够高效或者由于测试人员对接口项目不够了解等原因,可能会导致测试项目中完整的接口列表不够明确,某些接口被重复测试或者某些接口未被覆盖到。
改善:
1)规定开发使用统一的文档工具推送新版本的接口文档(git等方式);规定统一的接口命名规范
2)测试维护接口用例的接口关联当对应的接口下;及时维护和更新接口地图;规范测试用例的命名
2、问题:部分历史用例存在接口关联空白
问题:
由于接口状态管理不明确,导致部分接口废弃或者停用、删除时,对应的用例没有及时处理
改善:
测试需要维护接口用例,检查关联空白并做对应的修补。若是接口本身在代码中被删除,需要与开发确认明确删除接口原因后做处理
3、问题:接口统计数据不正确
1)用例调通数
原因:
接口用例的校验没写对或者接口不可回归,不是每次执行的效果都一致,或者接口逻辑被修改但是旧用例未更新
改善:
定期执行测试计划,并对校验和可回归性做检查和修正;在接口送测旧接口的新功能改动时,覆盖旧接口用例并维护更新用例
2)接口覆盖数
原因:
部分历史接口未维护,影响接口覆盖数
改善:
定期检查接口覆盖情况,补充完善历史用例
4、问题:前置调用接口时提示404,无对应服务
原因:
由于接口变更导致前置接口不可用
改善:
对被当作前置步骤的接口进行标识,关注接口变化并及时更新对应使用其作为前置的用例。使用前置接口时,尽量使用比较稳定的返回变量做前置条件
5、问题:历史用例原本运行正常且校验完整,但现在运行报错,测试不通过
原因:
部分历史接口在改动后未及时更新对应的测试用例,导致用例不可用。
主要有两个问题:参数名变了 、异常提示返回的信息变更
逻辑细节变更
改善:
1)把参数名称做成接口前置变量
2)异常校验使用正则等非等式匹配,容错性高些
3)开发变更接口细节请及时更新接口文档并通知测试修改历史用例
6、问题:有些用例可读性差,难维护
原因:
用例经手多个测试人员,编写用例风格不统一
改善:
1)输出统一的项目用例编写规范
2)对前后置较多、可读性差的用例,做好描述备注说明或者评审意见中说明清楚用例设计步骤
3)去繁求简,用例尽量简单明了
7、问题:部分用例使用sql语句进行后置处理
问题:
deleted操作,导致关联业务数据丢失,产生一系列脏数据,或者与redis数据不匹配等。破坏无法恢复
改善:
禁止使用deleted语句进行删除操作,只能通过接口进行逻辑删除,不允许进行物理删除
新接手接口项目
1)确认项目环境配置是否正确,多种环境下的配置均正常(host、数据库、全局变量、环境切换,请不要在一个环境里怼多个不同环境的变量,会造成环境切换的不便,建议不同环境使用相同变量名且仅通过变量值不同来区分环境)
2)确认项目整体相关的接口功能,有个大致了解(了解一个对象全生命周期相关的接口 有利于在用例准备时 充分利用已有接口)
3)了解项目接口的需求背景,推动开发补充完整的接口文档
4)整理项目:确认接口列表内接口唯一;确认已有的接口用例情况——接口关联不存在为空的、用例前后置引用接口不会不存在、用例可回归、不存在没有校验会一直成功的用例
5)补充历史未覆盖的接口
6)合理运用标签分类接口用例类型,以便执行测试计划时有分类依据
7)如果项目迭代频繁,需要将接口用例编写过程中不断重复使用的前置(常见变量数据生成)、校验脚本做整理,方便使用,提高效率
8)如果某个用例前后置或者校验复杂,不能一目了然时,请及时备注相关用例设计说明,方便后续多人维护,减少阅读用例的障碍
9)用例中若参数变量是固定值,除非这个参数值仅为该项目用或者状态不变,否则请统一使用动态的变量值(自己通过一系列前置生成的新的测试数据)做处理。
自动化引入时机与场景
自动化的测试用途和适用场景包括但不限于以下:
1、回归测试
验证是否引入新的缺陷,老缺陷是否修复
2、冒烟测试
通过自动测试在人工测试介入前,对产品主流程和环境服务快速冒烟测试
3、每日线上巡检
构建自动化测试每日巡检,用于实时监控线上重要功能的稳定性和可用性
4、构造测试数据
通过自动化测试,构建大量测试数据,为人工测试或其它(如性能测试)测试提高数据上的便利
5、固化资产
通过自动化可固化资产(流程、工具、代码、文档)
6、建立测试和代码的覆盖连续
通过自动化工具能够确定测试用例的覆盖路径,确定用例集对程序逻辑流程和控制流程的覆盖
PS:自动化测试往往用于核心业务流程或者重复执行率高的功能,自动化测试不是100%测试,不可能达到手工测试的覆盖率,项目团队需要筛选关键功能优先展开自动化测试
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
只要你心怀梦想,就能不畏困难,超越自己。成功的路上,除了努力,还需要坚持和耐心。只有在追求中不断成长,才能迎接属于自己的辉煌时刻!
生命太短,不要让自己的人生留下遗憾。不断挑战自我,探索未知,在奋斗中实现自己的价值。无论路途多么曲折,相信自己,坚持不懈,就能走向属于自己的成功之路!
世间万物,不屈不挠才是最美的风景。无论面对什么困难,都不能放弃自己的信念和目标。相信自己,坚持努力,就能创造出属于自己的辉煌和成功!