软件测试包括哪些测试:按项目实操场景划分的全品类测试类型

软件测试包括哪些测试:按项目实操场景划分的全品类测试类型

刚入行做功能测试的时候,被组长临时抓去整理项目测试台账,当场懵住,完全说不清软件测试包括哪些测试,只知道自己天天点点页面、测按钮跳转,压根不清楚日常做的工作只是软件测试里最基础的一小部分。那次硬着头皮梳理所有测试环节,才实打实摸清了项目里真实落地的所有测试类型,不是书本上空洞的理论分类,全是开发迭代、项目上线时实打实要做的工作。

最基础、每个项目必做的就是功能测试,这也是所有测试工作的打底内容。日常拿到需求文档后,对着页面、接口、业务流程逐一校验,检查点击、输入、跳转、数据提交是否符合需求,有没有逻辑漏洞。之前做电商小程序迭代,整整一周都在做这件事,测试商品下单、付款、退款、优惠券抵扣的全流程,反复模拟普通用户的操作场景,排查重复下单、退款金额异常的问题,没有任何复杂工具,纯手工校验,也是所有软件项目最核心、不能省略的测试环节。

比功能测试进阶一层的,是兼容性测试,很多新手很容易忽略这个环节,最后导致上线翻车。之前接手过一个后台管理系统,功能测试全部通过,自测通过率百分百,结果内测的时候,发现老版本谷歌浏览器、360极速模式下,页面排版错乱、按钮点击无响应。后续专门补做了全量兼容性测试,覆盖不同浏览器版本、不同电脑分辨率、手机端不同机型和系统版本,逐一适配修复,才解决了适配问题。这个测试不测细节的业务逻辑,只测软件在不同运行环境下的展示和使用状态。

性能测试是中大型项目上线前的硬性关卡,小项目基本不会涉及,但但凡有用户量的产品都绕不开。之前参与社区团购APP改版,功能和兼容性都没问题,压测的时候直接暴露了短板。用工具模拟上千人同时下单、刷新页面,出现了接口超时、页面卡顿、数据加载失败的情况。性能测试不像功能测试可以肉眼排查,主要检测软件的响应速度、并发承载能力、服务器抗压能力,找出系统性能瓶颈,提前优化,避免上线后高并发场景下系统崩溃。

安全测试是偏专项的小众测试,大多是政企、金融类项目才会重点落地。之前协助安全同事做过一次理财软件的专项测试,全程跟着打杂,亲眼看到他们通过工具检测接口漏洞、密码明文传输、权限越界访问等问题。普通业务测试员很少独立做完整安全测试,但日常工作里会顺带做基础校验,比如检查后台普通账号能不能访问管理员权限页面、用户隐私数据会不会明文展示,这些都属于简易的安全测试范畴。

还有很多人不清楚的回归测试,它不是独立的测试品类,却是迭代开发中最高频的测试工作。每次版本更新、修复bug之后,不会只测修改的点位,要把相关的旧功能、核心流程全部重新测一遍。之前踩过一次大亏,修改完商品价格计算bug后,只校验了修改点位,没做回归,导致旧的优惠券叠加功能出现异常,直接造成内测故障。从那之后,每次改bug、迭代新功能,都会固定做回归测试,规避改动引发的连锁问题。

除此之外,还有易用性测试、自动化测试、接口测试这些细分类型。接口测试现在基本是测试标配,不等页面开发完成,直接对接后端接口校验数据交互,能提前排查大部分后端逻辑问题。自动化测试是把重复的手工测试步骤写成脚本,用来替代反复的回归操作,节省重复工作的时间。易用性测试更偏向用户体验,检查页面布局、操作逻辑是否贴合用户习惯,有没有繁琐冗余的操作步骤。

目前手上的迭代项目,每次版本迭代都会按固定顺序落地测试环节,先做接口测试打底,再做功能全覆盖测试,随后补全兼容性、基础易用性校验,最后做回归测试,大型版本迭代额外加测性能和安全。

了解更多百科知识请访问 百科