软件测试都有哪些种类:上手区分全靠项目真实干活经历
刚入职接手商城小程序迭代版本时,领导扔来一份测试规划表,盯着上面五花八门的测试名称发愣,软件测试都有哪些种类,当时满脑子只懂点点页面找弹窗bug,完全分不清各类测试的分工边界,还傻乎乎把功能测试和性能测试混在一起执行,直接耽误了版本提测进度。
需求评审会上开发组长专门拉着我梳理工作,随手划分出两类基础测试方向,功能测试是最先上手的活,小程序所有下单、支付、优惠券核销的流程都要反复走通。那会儿每日重复核对二十多条业务链路,偶尔漏测优惠叠加的隐藏规则,线上上线后接连收到用户投诉,后来才反应过来功能测试要覆盖正常、异常、边界三类操作,不能只走顺畅的使用路径。
接口测试是单独抽出来的专项工作,前后端联调阶段专门对接后端开发。商城的商品库存接口、退款申请接口,不用点开小程序页面,直接用工具发送请求查看返回数据。有次自测接口时没留意参数格式,前端页面明明显示库存充足,接口返回的库存数值却为空,开发排查半天才找到问题根源,这块测试和页面操作测试完全是两套工作逻辑,分开执行能更早挖出后台隐藏问题。
性能测试我只参与过一次大促前的专项,当时运营敲定活动满减规则,预估峰值会有上千用户同时进入商城。公司搭建专用压测环境,模拟多人同时下单、刷新商品页面,持续运行两小时观测页面加载速度、接口响应时长。活动预热前压测结果显示高峰时段页面打开要三秒以上,技术侧优化服务器配置后复测才达标,这类测试不会去校验按钮能不能点击,只盯着系统承载能力。
安全测试是安全同事同步开展的工作,和我的日常测试工作穿插进行。他们会尝试篡改下单订单价格、绕开登录权限直接进入后台管理页面,还会检测小程序会不会泄露用户手机号、收货地址等隐私信息。有一回安全同事测出游客能调取全部商品库存数据,我当时做功能测试时全程登录账号操作,压根不会想到未登录状态下的接口漏洞,这也能看出不同测试种类覆盖的检查方向完全不重合。
兼容性测试的执行场景大多集中在下班前的零散时间。手里常备多款老旧安卓手机、不同系统版本的苹果设备,还有电脑端微信内置小程序窗口。同款商品详情页在老款千元机上会出现文字错位,iPad大屏端商品图片比例失调,这些问题在我常用的旗舰手机上完全不会显现。反复切换设备复测后整理出兼容问题清单,同步给到UI开发调整适配方案。
回归测试是每次版本迭代必做的环节,修复完线上反馈的bug之后,不能只检查修复的那一处问题。之前有过一次偷懒,只核验优惠券无法抵扣的问题,没复测购物车结算页面,结果支付页面弹出空白弹窗,版本回退重做测试,白白耗掉整整一个工作日。
下班收拾测试用例文档的时候,指尖划过纸上标注的各类测试名称,桌面还摆着当天打印的压测数据报表。