11软件性能测试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 压力测试是在强负载(大数据量、大量并发用户等)下的 测试,查看应用系统在峰值使用情况下操作行为,从而有 效地发现系统的某项功能隐患、系统是否具有良好的容错 能力和可恢复能力。压力测试分为高负载下的长时间(如 24小时以上)的稳定性压力测试和极限负载情况下导致系 统崩溃的破坏性压力测试。
• 性能测试是为获取或验证系统性能指标而进行测试。多数 情况下,性能测试会在不同负载情况下进行。
6
6、性能测试的类别(其他)
• 配置测试 配置测试主要是通过测试找到系统各项资源的最佳分
配原则。例如我们可以不停的调整oracle的内存来决定 cpu和内存的匹配情况。(当前配置-调优-未来业务增长)
• 容Leabharlann Baidu测试 测试系统能够处理的最大会话能力。确定系统可处理同 时在线的最大用户数,通常和数据库有关。
• 免费 – Microsoft Web Application Stress Tool – Microsoft Application Center Test
• 开源 – OpenSTA – Jmeter – Grinder
课程内容
第一章 性能测试概要 第二章 认识LoadRunner 第三章 VuGen录制Vuser脚本 第四章 Controller创建运行场景 第五章 Analysis分析结果
7、性能测试实施过程(一)
一. 了解被测试项目的性能测试需求 二. 分析被测试项目的性能测试需求 三. 编写性能测试计划/测试用例 四. 脚本维护(编写程序) 五. 执行脚本(执行程序) 六. 分析结果 七. 性能调优
9、性能测试工具
• 商业 – Mercury Loadrunner(现为HP) – Rational Performance Tester – SeagueSilkTest – RadviewWebLoad
• 可靠性测试 加载一定的业务压力(比如直到Cpu资源在70-90%的使 用率)的情况下,运行一段时间,检查系统是否稳定。
• 失败测试 对于有冗余备份和负载均衡的系统,通过这样的测试来 检验如果系统局部发生故障用户是否能够继续使用系统, 用户受到多大的影响。
4、性能测试指标(一)
• 事务(Transaction ) 在web性能测试中,一个事务表示一个“从用户->web Server->DB->web server->用户”的过程,一般的响应时 间都是针对事务而言的。
• 并发用户(Concurrent users) 并发数是指同时进行请求的客户的数量,并发数用于模
拟用户的真实负载情况(并发情况是对系统最大的考验), 并发数≠同时使用系统的用户数。 – 同一时刻 – 对服务器有负载 (注意:全部用户、在线用户、并发用户三者之间的区别)
4、性能测试指标(三)
• 资源利用率(内存、CPU、网络、I/O的利用率等 Resource utilization) 资源利用率指的是对不同系统资源的使用程度,例如 服务器的CPU(s),内存,网络带宽等。资源利用率通常 以占用最大值的百分比n%来衡量。
软件性能测试
课程内容
第一章 性能测试概要 第二章 认识LoadRunner 第三章 VuGen录制Vuser脚本 第四章 Controller创建运行场景 第五章 Analysis分析结果
1、为什么要做性能测试?
1、客户有明确要求。 2、公司内部想知道目前系统的性能状况。 3、找出系统性能瓶颈。 4、了解系统在长时间的压力下性能情况。
• 点击率(客户端 Hit Rate) Hit Rate:是指每秒发送的HTTP请求的数量,点击率越大对 server造成的压力就越大。
4、性能测试指标(二)
• 吞吐量(Throughput) 吞吐量指的是单位时间内处理的客户端请求数量。通常
情况下,吞吐量用请求数/秒或者页面数/秒来衡量。从业务 角度看,吞吐量也可以用访问人数/天 或者页面访问量/天来 衡量。
• 响应时间(Response Time) 响应时间指的是从客户端发起一个请求开始,到客户端接收 到从服务器端返回的响应结束,这个过程所耗费的时间。在 某些工具中,响应时间通常会称为 “TTLB”,即“time to last byte”,意思是从发起一个请求开始,到客户端收到最 后一个字节的响应所耗费的时间。响应时间的单位一般为“ 秒”或者“毫秒”。一个公式可以表示:响应时间= 网络响 应时间 + 应用程序响应时间 。
2、性能测试定义
• 性能测试是通过自动化测试工具模拟 多种正常、峰值以及异常负载条件来 对系统的各项性能指标进行测试 。
• 性能关注点 – 时间(用户使用的响应时间) – 空间(资源消耗情况)
3、性能测试范围
性能范围(广义) 系统的性能是一个很大的概念,覆盖面非常广泛,对一个 软件系统而言包括:执行效率、资源占用、系统稳定性、 安全性、兼容性、可靠性、可扩展性。
负载测试、压力测试和性能测试的区别
• 负载测试是模拟实际软件系统所承受的负载条件的系统负 荷,通过不断加载(如逐渐增加模拟用户的数量)或其它 加载方式来观察不同负载下系统的响应时间和数据吞吐量 、系统占用的资源(如CPU、内存)等,以检验系统的行 为和特性,以发现系统可能存在的性能瓶颈、内存泄漏、 不能实时同步等问题。
10
5、 2/5/10原则
一.当用户能够在2秒以内得到响应时,会感觉系统的响应 很快
二.当用户在2-5秒之间得到响应时,会感觉系统的响应速 度还可以
三.当用户在5-10秒以内得到响应时,会感觉系统的响应速 度很慢,但是还可以接受
四.而当用户在超过10秒后仍然无法得到响应时,会感觉系 统糟透了,或者认为系统已经失去响应,而选择离开这 个Web站点,或者发起第二次请求。
负载测试 通过测试系统在资源超负荷情况下的表现,以发现设计上 的错误或验证系统的负载能力。负载测试的目标是确定并 确保系统在超出最大预期工作量的情况下仍能正常运行。
压力测试 对系统不断施加压力的测试,是通过确定一个系统的瓶颈 或者不能接收的性能点,来获得系统能提供的最大服务级 别的测试。压力测试是为了发现在什么条件下您的应用程 序的性能会变得不可接受。
• 性能测试是为获取或验证系统性能指标而进行测试。多数 情况下,性能测试会在不同负载情况下进行。
6
6、性能测试的类别(其他)
• 配置测试 配置测试主要是通过测试找到系统各项资源的最佳分
配原则。例如我们可以不停的调整oracle的内存来决定 cpu和内存的匹配情况。(当前配置-调优-未来业务增长)
• 容Leabharlann Baidu测试 测试系统能够处理的最大会话能力。确定系统可处理同 时在线的最大用户数,通常和数据库有关。
• 免费 – Microsoft Web Application Stress Tool – Microsoft Application Center Test
• 开源 – OpenSTA – Jmeter – Grinder
课程内容
第一章 性能测试概要 第二章 认识LoadRunner 第三章 VuGen录制Vuser脚本 第四章 Controller创建运行场景 第五章 Analysis分析结果
7、性能测试实施过程(一)
一. 了解被测试项目的性能测试需求 二. 分析被测试项目的性能测试需求 三. 编写性能测试计划/测试用例 四. 脚本维护(编写程序) 五. 执行脚本(执行程序) 六. 分析结果 七. 性能调优
9、性能测试工具
• 商业 – Mercury Loadrunner(现为HP) – Rational Performance Tester – SeagueSilkTest – RadviewWebLoad
• 可靠性测试 加载一定的业务压力(比如直到Cpu资源在70-90%的使 用率)的情况下,运行一段时间,检查系统是否稳定。
• 失败测试 对于有冗余备份和负载均衡的系统,通过这样的测试来 检验如果系统局部发生故障用户是否能够继续使用系统, 用户受到多大的影响。
4、性能测试指标(一)
• 事务(Transaction ) 在web性能测试中,一个事务表示一个“从用户->web Server->DB->web server->用户”的过程,一般的响应时 间都是针对事务而言的。
• 并发用户(Concurrent users) 并发数是指同时进行请求的客户的数量,并发数用于模
拟用户的真实负载情况(并发情况是对系统最大的考验), 并发数≠同时使用系统的用户数。 – 同一时刻 – 对服务器有负载 (注意:全部用户、在线用户、并发用户三者之间的区别)
4、性能测试指标(三)
• 资源利用率(内存、CPU、网络、I/O的利用率等 Resource utilization) 资源利用率指的是对不同系统资源的使用程度,例如 服务器的CPU(s),内存,网络带宽等。资源利用率通常 以占用最大值的百分比n%来衡量。
软件性能测试
课程内容
第一章 性能测试概要 第二章 认识LoadRunner 第三章 VuGen录制Vuser脚本 第四章 Controller创建运行场景 第五章 Analysis分析结果
1、为什么要做性能测试?
1、客户有明确要求。 2、公司内部想知道目前系统的性能状况。 3、找出系统性能瓶颈。 4、了解系统在长时间的压力下性能情况。
• 点击率(客户端 Hit Rate) Hit Rate:是指每秒发送的HTTP请求的数量,点击率越大对 server造成的压力就越大。
4、性能测试指标(二)
• 吞吐量(Throughput) 吞吐量指的是单位时间内处理的客户端请求数量。通常
情况下,吞吐量用请求数/秒或者页面数/秒来衡量。从业务 角度看,吞吐量也可以用访问人数/天 或者页面访问量/天来 衡量。
• 响应时间(Response Time) 响应时间指的是从客户端发起一个请求开始,到客户端接收 到从服务器端返回的响应结束,这个过程所耗费的时间。在 某些工具中,响应时间通常会称为 “TTLB”,即“time to last byte”,意思是从发起一个请求开始,到客户端收到最 后一个字节的响应所耗费的时间。响应时间的单位一般为“ 秒”或者“毫秒”。一个公式可以表示:响应时间= 网络响 应时间 + 应用程序响应时间 。
2、性能测试定义
• 性能测试是通过自动化测试工具模拟 多种正常、峰值以及异常负载条件来 对系统的各项性能指标进行测试 。
• 性能关注点 – 时间(用户使用的响应时间) – 空间(资源消耗情况)
3、性能测试范围
性能范围(广义) 系统的性能是一个很大的概念,覆盖面非常广泛,对一个 软件系统而言包括:执行效率、资源占用、系统稳定性、 安全性、兼容性、可靠性、可扩展性。
负载测试、压力测试和性能测试的区别
• 负载测试是模拟实际软件系统所承受的负载条件的系统负 荷,通过不断加载(如逐渐增加模拟用户的数量)或其它 加载方式来观察不同负载下系统的响应时间和数据吞吐量 、系统占用的资源(如CPU、内存)等,以检验系统的行 为和特性,以发现系统可能存在的性能瓶颈、内存泄漏、 不能实时同步等问题。
10
5、 2/5/10原则
一.当用户能够在2秒以内得到响应时,会感觉系统的响应 很快
二.当用户在2-5秒之间得到响应时,会感觉系统的响应速 度还可以
三.当用户在5-10秒以内得到响应时,会感觉系统的响应速 度很慢,但是还可以接受
四.而当用户在超过10秒后仍然无法得到响应时,会感觉系 统糟透了,或者认为系统已经失去响应,而选择离开这 个Web站点,或者发起第二次请求。
负载测试 通过测试系统在资源超负荷情况下的表现,以发现设计上 的错误或验证系统的负载能力。负载测试的目标是确定并 确保系统在超出最大预期工作量的情况下仍能正常运行。
压力测试 对系统不断施加压力的测试,是通过确定一个系统的瓶颈 或者不能接收的性能点,来获得系统能提供的最大服务级 别的测试。压力测试是为了发现在什么条件下您的应用程 序的性能会变得不可接受。