押题正文

返回正文列表

系统测试正文

适用项目:线上商品的销售与运营平台

复习状态:已复习 1 次 (2026-05-22T04:26:59)

正文概述

系统测试是在集成测试之后、验收测试之前进行的一类测试,主要验证完整系统在接近真实运行环境下是否满足需求规格说明和业务运行要求。与单元测试关注单个模块、集成测试关注模块接口不同,系统测试关注的是系统整体功能、性能、安全性以及用户使用体验。线上商品销售与运营平台包括用户端、商家端和运营管理端,核心业务涉及商品浏览、购物车、订单创建、库存扣减、优惠券核销、支付回调和经营数据统计。如果系统测试不充分,即使各模块单独运行正常,也可能在真实交易链路中出现订单状态不一致、库存超卖、高峰期响应慢或越权访问等问题。因此,在本项目中,我搭建了与生产环境配置相近的测试环境,重点采用黑盒功能测试、负载测试和安全性测试三种方法,确保平台能够支撑正式上线后的稳定运营。

正文分点 1

首先,我采用黑盒功能测试验证平台核心业务流程。黑盒测试不关注程序内部结构,而是根据需求规格说明设计输入数据,观察系统输出和业务状态是否符合预期。在本项目中,我按照用户购物主流程设计测试用例,覆盖注册登录、商品搜索、加入购物车、填写收货地址、使用优惠券、提交订单、支付回调和订单取消等场景。例如针对满 199 减 30 的优惠券,我分别设计订单金额为 198.99 元、199 元和 199.01 元的边界数据,验证优惠券是否只在满足门槛时生效;针对库存扣减,我设计库存为 0、1 和 2 件时的下单场景,验证系统能否正确阻止超卖。通过 420 条黑盒功能测试用例,我们发现了优惠券边界金额判断错误、订单取消后优惠券未释放等 23 个问题。修复后,核心交易流程测试通过率达到 99% 以上,订单、库存、优惠券和支付状态保持一致。

正文分点 2

其次,我采用负载测试验证平台在预期业务压力下的性能表现。负载测试是在逐步增加并发用户数或请求量的情况下,观察系统响应时间、吞吐量、CPU、内存、数据库连接数等指标是否仍处于可接受范围。在线上商品销售平台中,大促期间会出现大量商品浏览和下单请求,因此我使用 JMeter 模拟用户浏览首页、搜索商品、查看详情、加入购物车和提交订单等典型路径,并按照 500、1000、2000、3000 并发用户逐步增加负载。测试发现,当并发用户达到 3000 时,订单提交接口 95% 响应时间超过 2 秒,数据库连接池接近上限。针对该问题,我调整了连接池参数,对商品详情页增加 Redis 缓存,并将订单后续通知改为异步消息处理。优化后,平台可以稳定支撑约 2500 QPS 的商品查询请求和每分钟约 1800 笔订单创建请求,核心接口 95% 响应时间控制在 800 毫秒以内。

正文分点 3

最后,我采用安全性测试验证平台的身份认证、权限控制和输入防护是否有效。线上商品销售与运营平台同时面向普通用户、商家和运营人员,如果权限控制不严,可能出现用户查看他人订单、商家修改非本店商品、运营人员越权配置活动等风险。在本项目中,我重点测试了登录令牌有效期、接口鉴权、订单资源访问控制、商家店铺权限和运营后台角色权限。例如我使用普通用户账号修改请求中的订单号,验证系统是否会返回无权限访问;使用商家账号调用非本店商品的上下架接口,验证服务端是否再次校验店铺归属;同时在搜索框、地址表单和活动配置表单中输入 SQL 片段和脚本标签,验证系统是否进行过滤和转义。通过 160 条安全性测试用例,我们发现并修复了 9 个问题,其中包括订单详情越权访问和活动配置脚本过滤不足。整改后,越权访问均被拦截,非法输入能够给出明确提示,平台上线后的业务安全性得到明显提升。