性能测试是使用自动化的工具,模拟不同的场景,对软件的各项性能指标进行测试和评估。是针对系统的性能指标,建立性能测试模型,制定性能测试方案,制定监控策略,在场景条件之下执行性能场景,分析判断性能瓶颈并调优,最终得出性能结果来评估系统的性能指标是否满足既定值。
性能测试是一个十分复杂的系统工程,对测试人员的能力水平提出了更高的要求,需要性能测试人员具备非常全面的知识与技能,能够定位应用的性能瓶颈,并提出适当的优化方案。通常,要对一个应用进行性能测试需要经历需求调研、环境准备、脚本开发、数据预埋、场景设计、场景执行、应用监控分析、瓶颈定位、瓶颈修复、回归测试、结果整理、输出报告等多个环节。作为一个优秀的系统测试工程师,需要通过系统的角度来分析测试被测试系统:功能测试(某个功能点是否实现)和性能测试(整个系统,包括软件和硬件的性能指标)
性能测试的场景如何定义?我们可以理解为功能测试中的用例,即性能测试的场景就是性能测试的用例。性能测试的场景是为了要实现特定的测试目标而对应用执行的压测活动。性能测试场景的设计与执行是整个性能测试活动的核心与灵魂,没有完整的场景设计就无法达到我们的测试目的,没有合理的场景设计就不会发现系统的性能缺陷。我们所开发的测试脚本,所预埋的测试数据都是为了实现特定场景所准备的。
性能测试中有响应时间、并发用户数、吞吐量、性能计数器、思考时间,这是性能测试中常用的几个概念,是在我学习中需要掌握的。性能测试的方法主要包括验收性能测试、负载测试、压力测试、配置测试、并发测试、可靠性测试、失败恢复测试。性能测试的应用领域主要有能力验证、规划能力、性能调优、发现缺陷和性能基准比较五个领域。对于性能测试来说,没有合适的工具配合简直是不可能实现性能测试的,虽然说选择了好的测试工具也不一定就能做好性能测试,但是选择一个适合的测试工具显然是更利于测试活动的开展与实现的。通常是选定几种测试工具,根据被测系统的环境来选择最适合项目的测试工具。性能测试的流程如下图: