第一阶段:测试设计阶段
1、 拿到测试需求后,分析理解本次测试的具体内容,需要了解的详细测试内容,联系研发进行需求调研工作。侧重业务理解包括上下游业务,重点业务点,测试指标,测试环境数据量及相关的造数据条件,涉及到的数据库,线上及测试环境部署,业务架构及提供测试时间;
2、 需求调研完成后,梳理本次测试业务,测试点,测试数据,环境部署,根据已得到的信息,选取测试方法,确定测试计划,编写测试方案并评审;
3、 搭建测试环境,包括修改测试环境的相关参数;
4、 编写测试脚本并调试;
确定性能测试点:重要功能点,频繁使用功能点,用户关心功能点,与DB密切相关的功能点,模拟用户两三年内的数据量进行测试。
第二阶段:测试执行
1、 按照方案进行执行,包括基准测试、负载测试、并发测试、混合测试、集合点测试、异常测试、稳定性测试、配置测试等。
2、 若测试过程中出现问题,进行问题瓶颈定位。
1) 可通过单条执行,查看日志,看错误日志内容,应用日志、tomcat日志、均衡服务日志、数据库日志等;
2) 通过JVM定位是否内存问题导致;
3) 通过jprofile监控,查看问题主要出在那个方法上,比如查看CPU使用和内存使用等;
4) 通过tcpdump及wireshark工具查看网络包内容,是否为网络造成问题;
5) 通过jstat –gcutil查看JVM内存回收;
6) 通过nmon工具查看服务器资源使用;
7) 换种压力工具,比如jmeter进行压测,是否出现同样的问题;
8) 使用dump命令将内存内容当下来,然后用MAT工具分析是否内存问题;
9) 通过远程配置,使用jconsole或者jvisualvm进行监控查看;
10) Lr_set_debuy_message()调试日志信息,定位问题原因;
3、 保存结果,完成测试;
第三阶段:分析测试结果
1、 分析测试结果包括资源监控结果;
2、 编写报告文档;将问题、调优、风险、结论全部做总结写进文档;
3、对整个项目做总结,通过本次项目学到了什么,有什么不足,及时学习。
将测试过程,形成文档,记录执行的过程中,出现的问题及解决的方法,方便最后报告的编写。及时做总结。
最新内容请见作者的GitHub页:http://qaseven.github.io/