性能测试基础知识

上一篇 / 下一篇  2012-08-28 15:58:05 / 个人分类:每天进步一点点

  性能测试(Performance testing)定义:在一定的负载情况下,系统的响应时间等特性是否满足特定的性能需求。
 
  负载的概念:当众多终端用户对系统进行访问时,用户越多,那么服务器需要处理的客户请求也就越多,从而形成了负载。负载包含三点:1.系统实际用户;2.系统在线用户;并发操作。
 
  性能测试分类:1.负载测试(Load Testing);2.压力测试(Stress Testing);3.容量测试(Volume Testing);4.配置测试(Configuration Testing);5.基准测试(Benchmark Testing);6.并发测试(Concurrency Testing)。注:大多数的性能测试都是负载测试。
 
  负载测试(Load Testing):是指在一定的软件硬件及网络环境下,运行一种或多种业务,在不同虚拟用户数量的情况下,测试服务器的性能指标是否在用户的要求范围内,以此确定系统所能承载的最大用户数、最大有效用户数以及不同用户数下的系统响应时间及服务器的资源利用率。
 
  压力测试(Stress Testing):是指在一定的软件硬件及网络环境下,模拟大量的虚拟用户向服务器产生负载,使服务器的资源处于极限状态下并长时间连续运行,以测试服务器在高负载情况下是否能够稳定工作
 
  负载测试盒压力测试的区别:负载测试强调的是在一定的环境下系统能够达到的峰值指标;压力测试强调的是在极端情况下系统的稳定性。
 
  性能测试在各个阶段所需要进行的内容:1.编码阶段(压力/并发);2.编码-测试之间(容量测试);3.测试阶段(负载/配置/基准)
 
  性能测试的三大指标:响应时间(Transaction Response Time 完成某个业务所需要的时间);吞吐量(Transaction Per Second 单位时间内能够处理的事务数目);服务器资源占用(负载下系统的资源利用率)。
 
  性能测试分析调优的方式和手段:1.确定问题(应用程序代码;数据库配置;操作系统配置;硬件设置;网络);2.确定原因;3.确定调整目标和解决方案(提高系统吞吐量;缩短响应时间;更好地支持并发);4.测试解决方案(对通过解决方案调优后的系统进行基准测试);5.分析调优结果(系统调优是否达到或超出了预定目标;系统是整体性能得到了改善,还是以牺牲某部分性能来解决其他问题;调优是否可以结束了)。
 
  性能测试的简单流程:制定性能测试目标->选择性能测试工具->设计性能测试->监控分析系统->性能调优
 
  性能测试工程师应该具备的素质:1.熟悉软件测试基本理论;2.掌握软件测试常用方法;3.熟悉一门编程语言(C语言、C++、C#、Java、PHP)及常见脚本语言(Python、Perl、Ruby);4.熟悉一种数据库管理系统(Oracle、SQLServer、Mysql);5.熟悉WEB服务器(IIS、Apache);6.熟悉常见网络协议(HTTP、TCP);7.掌握性能测试理论;8.熟练使用一种性能测试工具(Loadrunner、Jmeter、OpenSTA);9.实际工作中需要的其他技能。

TAG:

 

评分:0

我来说两句

日历

« 2024-05-12  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 13506
  • 日志数: 9
  • 建立时间: 2012-08-01
  • 更新时间: 2012-09-21

RSS订阅

Open Toolbar