关于性能测试问题解答篇(下)

  1. 测试结果分析的步骤。

本人对性能测试经验虽然不多,但在自己做过的性能测试项目中,总结出一套分析测试结果的步骤,不断地学习,加强对性能测试结果分析的理解。对性能测试的结果分析,重点分析是对结果数据的分析,以loadrunner性能测试工具来对结果分析的步骤如下:

结果分析思路:结果摘要--》并发数分析--》响应时间--》每秒点击数
                
--》业务成功率--》系统资源--》网页细分图
                
--》web服务器资源--》数据库服务器

1.先查看LR结果分析器页面中,Summary的页面报告,Summary主要是先看结果摘要信息,判定它与场景运行是否一致,包括运行时间、并发用户数等,事务的响应时间与执行情况是否合理
    
2.结合Summary的页面报告,如果事务执行失败或响应时间过长,需要深入分析

深入分析原则:

1) 
最大运行的并发用户数是否与场景设置的最大运行并发数一致如果没有,看虚拟用户相关的分析图;

2)  事务的平均响应时间过长,要看与事务相关的各类图,每秒点击次数 与
吞吐量、每秒HTTP响应数 这三个图是成正比,即三个图的曲线大体是一致的;

3) 
分析业务成功率,即结果分析报告中是否事务有失败,如果有(看量多量少),说明系统有瓶颈;

4) 
接着就要分析服务器系统资源的使用情况,包括CPU、内存、磁盘等;

5) 
使用LR页面诊断图标,网页细分图分析每个页面占用的资源;

6)
分析web服务器资源,包括中间件(缓存设置、初始化内存、最大线程数等);

7) 最后分析数据库服务器。

2. 
在分析结果的时候需要关注的内容有哪些?

总的来说,一般我们常用的评价系统性能关注的指标

1)        
响应时间(Response Time)

2)         并发用户数(The Number of
Concurrent Users)

3)         吞吐量(Throughput)

4)         每秒事务处理量(Transaction per
Second)

5)         资源利用率(Hardware/Software
Resource Utilization)

性能指标之间的关系

1)         此消彼长

2)         此长彼消

    3.
在进行性能测试前,服务器上的哪些参数需要设置。

应用服务器和数据库服务器需要根据并发的用户数,设置相关的参数。应用服务器:内存调整、连接池设置;数据库服务器:内存策略、连接数设置。

4.
录制脚本手动关联后,回放时没有报错,但在运行场景时怎么报变量找不到左右边界的错误,按道理如果找不到左右边界,应该在脚本回放时就报这个错误的。

     运行脚本时候,不一定会报错的。因为大多数情况是我们在回放脚本之后只观察回放日志中有没有红色的错误提示信息,如果没有我们就认为我们的脚本是ok的,其实不然,很多时候一些隐藏的错误就在回放日志中可以被发现,比如回放日志中的Warning信息,也就是警告信息,这些信息一旦你不去理会它,它将在场景运行过程中开始频繁暴露出来,而在场景中报错之后我们就认为可能是系统有问题或者是测试过程存在其他问题等等,而很难去考虑到是脚本的问题,是脚本在Vuser中调试就存在的问题。还有的时候一些问题在一次脚本回放中就不能被发现,他需要通过Vuser中设置多次迭代才能在回放日志暴露出问题来,所以说我们通常的思维就是一旦测试脚本没有一次回放没有出现错误,就去场景中运行,结果在场景中哪怕是运行10个用户都还会报错,这就是问题的根源所在。

   
5.  并发用户数和集合点有必然联系吗?在性能测试中必须使用集合点来测试吗?

     
并发用户数,就是同时操作的用户,这里的“操作”可以指对系统真正的操作,也可以只是连接(此时通常叫作“并发连接数”),而集合点是一种特殊情况下的并发,多用于测试系统在瞬间加压的表现。因此,并发用户数和集合点有联系,但并非必然的联系,在测试并发用户的性能测试场景中,可以不必设置集合点,这将视测试目标和测试策略而定。

    6. 
不设置集合点的测试,能代表是“并发”操作吗?

     
不设置集合点,可以看作是在线的用户数,并发操作对服务器等的指标压力是不一样的,不设置并发可看作同时在线。同时在线用户:对于一个软件来讲,当一个用户登录到该网站的首页后,开始在该网站上进行各种操作,包括浏览网页、检索内容、提交表单等,这个过程中的用户称为在线用户。若同一时间点或同一个时间段内,有很多这样的用户在访问该网站,这些用户统称为该网站的同时在线用户。同时在线用户的另一层理解是,将应用系统整体看作是一个黑盒子,从用户的客户端层面看向系统,总共有多少个人在使用它。当进行性能测试时,如果你使用的是同时在线用户,则可以称之为同时在线负载。并发用户:对于一个软件来讲,可能存在WEB服务器、应用服务器、数据库服务器三个层次,而用户所使用的浏览器是在最外面的客户端层面。如果某个时间点或时间段内,共有1000个用户同时在线,他们进行着各种各样的操作,而某个时间点上可能存在10个左右的用户同时进行了一个或多个操作,导致WEB服务器同时接收到了10个左右的交易请求,我们称这个10个左右的用户为超级并发用户。当进行性能测试时,如果你使用的是超级并发用户,则可以称之为超级并发负载。

时间: 2024-08-19 01:21:09

关于性能测试问题解答篇(下)的相关文章

关于性能测试问题解答篇(上)

1.性能测试的目的和目标. 性能测试的目的是验证软件系统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,优化软件,其中包括评估系统的能力.识别体系中的弱点.验证系统的稳定性及可靠性,最后起到优化系统的目的. 性能测试的目标是通过寻找系统瓶颈,优化性能,同时评价系统当前能力,并预测系统未来性能以及系统的可扩展性. 2.性能需求分析来源. (1)根据需求文档或客户方提出要求来分析系统性能需求: (2)参考相关数据,如系统运行时的日志数据: (3)参考历史项目.其他同行类似项目.其他

[Android Memory] App调试内存泄露之Context篇(下)

转载地址:http://www.cnblogs.com/qianxudetianxia/p/3655475.html 5. AsyncTask对象 我N年前去盛大面过一次试,当时面试官极力推荐我使用AsyncTask等系统自带类去做事情,当然无可厚非. 但是AsyncTask确实需要额外注意一下.它的泄露原理和前面Handler,Thread泄露的原理差不多,它的生命周期和Activity不一定一致. 解决方案是:在activity退出的时候,终止AsyncTask中的后台任务. 但是,问题是如

学习笔记-性能测试-工具篇-LR-初识

关于LR的基本信息网上都能搜到,这里就不再赘述. loadrunner的安装准备 windows环境: 前提条件: 内存:2G,硬盘空闲空间10G,安装完成后实际只占不到2G 支持winXP  SP3;32位与64位win7浏览器支持IE6-8,IE9,firefox3 若以前安装过LoadRunner,则将其卸载. 下载好需要的部件然后通过安装程序进行安装 关于破解细节,详情请百度或者谷歌. 这里找到一篇关于LR11的安装篇: http://www.cnblogs.com/yangxia-te

学习笔记-性能测试-工具篇-LR-12的安装

进入LR的官方网站下载好最新的两个版本 两个安装文件: 先解压到同一文件夹 点击安装程序,选择安装的路径会自动安装: 安装完成后出现三个主要组件: 学习笔记-性能测试-工具篇-LR-12的安装,布布扣,bubuko.com

HQL实现新闻上一篇下一篇

要实现新闻的上一篇下一篇功能,关键是HQL语句 上一篇:HQL="from News d where d.id<? order by id desc"; 下一篇:HQL="from News d where d.id>? order by id asc "; daoImpl实现的方法: public News nextPage(News news){ try{ String queryString="from News d where d.id

【渗透课程】第二篇下-HTTP协议的请求与响应深度剖析

[渗透课程]第二篇下-HTTP协议的请求与响应深度剖析 HTTP1.1目前支持以下7种请求方法: 常见的MIME类型如下: 第一个数字有五种可能的取值: 目录 什么是请求方法?什么是请求头? HTTP请求信息由3部分组成: 1.请求方法(GET/POST) URI 协议/版本 2.请求头(Request Header) 3.请求正文 下面我们来分析一个http请求: POST http://xg.mediportal.com.cn/health/sms/verify/telephone HTTP

HQL语句实现新闻上一篇下一篇

要实现新闻的上一篇下一篇功能,关键是HQL语句 上一篇:HQL="from News d where d.id<? order by id desc"; 下一篇:HQL="from News d where d.id>? order by id asc "; daoImpl实现的方法: public News nextPage(News news){ try{ String queryString="from News d where d.id

Android 终端性能测试——内存篇

前言 做Android QQ性能测试时,内存测试中遇到不少困惑,"各种"内存术语,到底什么意思,怎么获取,这里总结一下. 进行的内存测试主要有两个方面,一,OOM的发现和定位,二,同历史版本或竞品的对比测试.关于oom可以用MAT进行分析,具体分析方法参见susanwu在km上的文章<如何使用Memory_Analyzer分析内存泄漏>.下面主要总结一下Android性能测试中常用的方法及解释 一:running services"查看service进程内存 从A

织梦正则自定义输出电脑站移动站上一篇下一篇文章

不去修改程序文件,用标签和正则直接在内容页模板里直接输出上一篇下一篇的链接和标题和没有上一篇下一篇的提示文字 电脑站上一篇下一篇的链接 <li> <a href="{dede:prenext get=pre runphp=yes}$url = @me;preg_match('/href=['"]?([^'"]+)/', $url, $match);@me = $match[1];{/dede:prenext}">上一篇</a> &