【Loadrunner】性能测试:通过服务器日志获取性能需求
性能测试:通过服务器日志获取性能需求
性能需求的获取无外乎以下几种方法:
1)产品、老大直接制定!
2)参考其他行业;
3)80/20原则;
4)服务器日志获取;
为了测试结果更加准确,最好的结果当然是服务器日志获取,因为这种方式真实有效~但是好多人都苦于不知如何去获取:看不懂服务器日志;拿到日志后无从下手;(PS:这也是本文产生的由来
)下面由鄙人来为大家一一道来~
一)前提
没有明确的性能需求;系统版本已运行很长一段时间,期间所积累的数据足以分析出客户业务使用情况;
二)日志解读(以apache日志为例)
1. apache日志包含什么?
Apache的日志功能主要是指其在运行中对服务器活动进行的记录。日志内容主要涵盖了服务器访问者身份、访问时间、具体访问情况及服务器运行错误信息等;
2.我们需要看哪些?
在Apache采用默认方式安装并运行后,将在安装目录的logs文件夹下生成如图所示的access.log和error.log两种日志文件。
图中左侧为access.log文件,记录所有访问者对服务器进行的详细操作;右侧为error.log文件,记录服务器运行期间,出现的错误与异常等。在此,研究服务器日志的主要目的是获取性能测试需求,即需要了解所有访问者对服务器的具体访问情况。因此,重点关注Apache的access.log文件。 (PS:Apache配置文件为httpd.conf,在配置文件中通过CustomLog命令可以设置日志文件存放路径,如“CustomLog /usr/local/apache/logs/access_log common”)
日志解读:
如上图:
第一部分为127.0.0.1;(远程主机的地址,标明访问者来源)
第二、三部分用“-”进行标识;(第二部分:访问者的email地址或者其他唯一性标识。基于安全考虑,通常用“-”替代;第三部分:访问者的用户名。基于安全考虑,通常也用“-”替代)
第四部分为[02/Jun/2009:22:12:30+0800];(访问请求发生的时间。)
第五部分为”GET /HTTP/1.0”;(访问请求的类型。此信息的典型格式为“方法-资源-协议”。方法包括GET、POST等;资源是指浏览者向服务器请求的文档或URL等;协议通常是HTTP+版本号)
第六部分为200;(服务器返回的状态码,标明请求的结果。如“200”为请求成功,“404”为页面未找到,“500”为服务器内部错误等)
第七部分为40283(响应给客户端的总字节数。)
PS:可在Apache的配置文件httpd.conf中,通过配置LogFormat的参数来自行定制日志文件的记录格式。如:LogFormat "%h %l %u %t \"%r\" %>s %b" common表示日志中记录上述七部分内容。
三) 日志转换为需求
接下来就是重点,将日志转换为我们看的懂得需求。在这里,我们借助WebLog Expert(window日志分析工具)。
(官方网站:http://www.weblogexpert.com;
PS:其他日志分析工具awstats,下载地址:http://awstats.sourceforge.net
1.日志合并
大家都知道IIS日志大部分情况下都是分开显示的,我们要进行日志分析当然希望分析全部日志,这里我们可以借助批处理程序;
步骤如下:
1)导出全部log日志;
2) 在log日志的目录下新建txt文档,编辑文档内容为:type *.log>>all.log,保存为cindy.bat文件。双击bat文件,即可生成all.log文件。
1)双击打开程序,创建日志分析;
2)填好log方式和地址;
3)生成结果;
Activity Statistics(活动统计):General Statistics提供了整个系统在运行期间,某些指标的平均和总计数值,但对性能测试而言,这些平均和总计数值往往是不够的,我们还需要查看一些峰值数据,或者说更希望看到各指标在不同时间段内的值分布情况。Activity Statistics就能提供出每天甚至每小时内各项指标数据,如每日用户访问量、每日点击量、每小时用户访问量、每小时点击量等。根据这些数据生成的图表反应了相关指标的分布趋势和峰值。
Access Statistics(访问统计):Activity Statistics提供每天、每小时的各项指标数据,侧重于各指标在时间上的分布,而Access Statistics反应的是业务或页面等的访问次数。Access Statistics菜单下支持按系统中页面、文件、图片、目录及入口页面的统计分类。Access Statistics可帮助我们确定性能测试的主要业务点(性能测试不同于功能测试,不能针对于整个系统的所有功能都开展性能测试,耗费人力物力且没有实际意义),从而更加真实有效的模拟大量用户的操作。从图表中可得出“每日页面访问趋势”及“最热门的访问页面”,这些信息对性能测试的用例及场景设计具有很强的参考价值。
Visitors(用户统计):提供依据IP来分类统计的点击量、用户访问量及带宽等各指标值。
以上为常用图标,其他图标也能帮助大家定位很多东西,这就需要靠大家去研究啦~!【如Referrers(提交统计):可提供最热站点、最热URL等指标分布数据;Browsers(浏览器统计):可提供用户使用的各类浏览器和操作系统的分配比例,方便大家在性能测试中更真实的模拟用户使用情况;Errors(错误统计):可提供系统运行期间出现错误的统计,通过这些信息能够帮助大家定位系统中存在的问题,进而通过分析问题发生原因,在新版本系统中有效避免等。 】
至此搞定,大家就能够获取到准确真实的性能需求啦,接下来该干嘛干嘛了~!
【Loadrunner】性能测试:通过服务器日志获取性能需求的更多相关文章
- 利用WebLog Experet分析日志获取性能需求
一.下载WebLog Expert日志分析工具 官网下载地址:http://www.weblogexpert.com/download.htm 二.安装 安装很简单,点击“下一步”默认安装即可 三.配 ...
- 本地多张图片采用jmeter上传到ftp服务器的方法和获取服务器日志中某些关键字的基本方法
测试需求: 本地图片上传到ftp服务器里和另外两台不同算法比对服务器进行比对,得出漏检和误检结果:这实际属于功能测试范畴. 测试思路: 第一种方法:使用实际场景的摄像机抓拍图片上传到服务器,用录屏软件 ...
- LoadRunner性能测试巧匠训练营
<LoadRunner性能测试巧匠训练营>基本信息作者: 赵强 邹伟伟 任健勇 丛书名: 实战出版社:机械工业出版社ISBN:9787111487005上架时间:2015-1-7出版日期: ...
- LoadRunner性能测试结果分析(转载)
性能测试的需求指标:本次测试的要求是验证在30分钟内完成2000次用户登录系统,然后进行考勤业务,最后退出,在业务操作过程中页面的响应时间不超过3秒,并且服务器的CPU使用率.内存使用率分别不超过75 ...
- LoadRunner性能测试样例分析
LR性能测试结果样例分析 测试结果分析 LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要.并发数.平均事务响应时间.每秒点击数.业务成功率.系统资源.网页细分图.Web服务器资源 ...
- 如何学习LoadRunner性能测试?
最近组内同事针对性能测试LR的脚本部分做了介绍,是个不错的分享.会后反思自己也有很长一段时间没做性能测试了,根据以往的经验,有必要做些整理和补充,本文主要介绍一些Loadrunner性能测试的学习方法 ...
- shell 在手分析服务器日志【转】
自己的小网站跑在阿里云的 ECS 上面, 偶尔也去分析分析自己网站服务器日志,看看网站的访问量.看看有没有黑阔搞破坏!于是收集,整理一些服务器日志分析命令,大家可以试试! awk '{print $1 ...
- RobotFrameWork(十三)RobotFramework与loadrunner性能测试结合(基于Remote库)
一般我们进行完功能测试,都需要进行下性能测试,那么这章我来介绍下,RobotFramework与loadrunner性能测试的融合,即运行完自动化功能测试,借助RobotFramework的Remot ...
- python websocket网页实时显示远程服务器日志信息
功能:用websocket技术,在运维工具的浏览器上实时显示远程服务器上的日志信息 一般我们在运维工具部署环境的时候,需要实时展现部署过程中的信息,或者在浏览器中实时显示程序日志给开发人员看.你还在用 ...
随机推荐
- php将汉字转换为拼音和得到词语首字母(二)
<?php class Pinyin{ private $_outEncoding = "GB2312"; public function getPinyin($str,$p ...
- Spring Cloud在国内中小型公司用的起来吗?
转自:http://www.cnblogs.com/ityouknow/p/7508306.html 今天吃完饭休息的时候瞎逛知乎,突然看到这个一个问题Spring Cloud在国内中小型公司能用起来 ...
- url中向后台传递中文乱码解决方法
方法一: 1.jsp中代码 var userNo = $('#prisoner_id').val(); userNo = encodeURI(userNo); allPrisone ...
- VC++ 操作Windows快捷方式
声明:本文是参考网友博文,然后自己实践整理所得,转载请注明出处! Windows的快捷方式实际上是一个带有扩展名LNK的数据文件,其中包含有用于访问Windows某一对象(即在资源管理器中所能浏览的所 ...
- ionic简单路由及页面传参
1)页面跳转及传参方法 angular.module('app.routes', [])//routes路由模型 .config(function($stateProvider, $urlRouter ...
- PyQt4 菜单栏 + 工具栏 + 状态栏 + 中心部件 生成一个文本编辑部件示例
我们将创建一个菜单栏.一个工具栏.一个状态栏和一个中心部件. #!/usr/bin/python # -*- coding:utf-8 -*- import sys from PyQt4 import ...
- 价格战拉上了Android平板电脑
自从苹果iPad成功以来,平板电脑一直是人们争相追捧的热门产品.其中Android平板电脑已是遍地开花.去年,在移动行业,主流厂商已推出了太多各种款型的Android平板电脑,它们留给2014年的创新 ...
- LeetCode——Binary Tree Paths
Description: Given a binary tree, return all root-to-leaf paths. For example, given the following bi ...
- LeetCode - Department Highest Salary
题目大概的意思是选出每个Department里工资最高的人的信息并组成相应的表信息 有几个值得注意的地方:1)使用group by语句时,前面的select语句后面的内容只能有两种情况一种是group ...
- 为非ajax请求绑定回调函数的方法
我们都知道jQuery为ajax请求封装了success和error两个回调方法,其实jQuery也实现了为非ajax请求的普通方法也设计了绑定回调函数的方法. 当一个方法需要等待另一个耗时很长的方法 ...