性能测试主要是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
负载测试和压力测试都属于性能测试,两者可以结合进行。
通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。
压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。
在实际工作中我们经常会对两种类型软件进行测试:BS和CS,这两方面的性能指标一般需要哪些内容呢?
性能测试考虑点
性能测试最基本要考虑以下几点:
2、资源利用率包括:cpu、内存、网络、硬盘、虚拟内存(如Java虚拟机)
3、服务器可靠性指服务器能在相对高负载情况下持续的运行
4、可配置优化性指服务器配置优化、业务逻辑优化、代码优化等
性能指标简介
3、服务器资源占用服务器资源占是指在负载情况下,系统的资源利用率。资源占用越低,说明系统越优秀。例如,cpu的占用率、内存使用率、查询Cache命令率、磁盘I/O读写速率等。
Web服务器性能指标
b/s基于浏览器/Web服务器的三层架构基于中间件应用服务器的三层架构基于Web服务器和中间件的多层架构
Jmeter聚合报告
CS结构程序性能指标
c/sclient/Server客户端/服务器架构基于客户端/服务器的三层架构基于客户端/服务器的分布式架构
列举数据库的测试指标数据库性能指标描述User0Connections用户连接数,也就是数据库的连接数量Numberofdeadlocks数据库死锁BufferCachehit数据库Cache的命中情况
小结
知道软件架构在实际测试中制约着测试策略和工具的选择。如何选择性能测试策略是在实际工作中需要了解的。
总结
1、硬件上的性能瓶颈一般指的是CPU、内存、磁盘读写等的瓶颈,为服务器硬件瓶颈。
2、应用软件上的性能瓶颈一般指的是服务器操作系统瓶颈(参数配置)、数据库瓶颈(参数配置)、web服务器瓶颈(参数配置)、中间件瓶颈(参数配置)等
3、应用程序上的性能瓶颈一般指的是开发人员,开发出来的应用程序(如sql语句、数据库设计、业务逻辑、算法等)。
5、网络设备上的性能瓶颈一般指的是防火墙、动态负载均衡器、交换机等设备。