LoadRunner基础知识
什么是自动化性能测试?
利用产品、人员和流程来降低应用程序、升级程序或补丁程序部署风险的一种手段
什么是自动化性能测试的核心?
向预部署系统施加工作负载,同时评估系统性能和最终用户体验
LoadRunner包含的组件:
Virtual User Generator录制最终用户业务流程并创建自动化性能测试脚本,即Vuser脚本
Controller组织、驱动、管理并监控负载测试
Load Generator通过运行Vuser产生负载
Analysis用于查看、剖析和比较性能结果
Launcher使你可以从单个访问点访问所有LoadRunner组建
LoadRunner术语:
场景:场景文件性能要求定义每次测试期间发生的事件
Vuser:在场景中,LoadRunner用虚拟用户(或称Vuser)代替真实用户Vuser模仿真实
用户的操作来使用应用系统;一个场景可以包含数十、数百乃至数千哥Vuser
Vuser脚本:描述Vuser在场景中执行的操作
事物:要评测服务器性能,需要定义事物;事物代表要评测的终端用户业务流程
负载测试流程:
负载测试一般包括5个阶段:规划负载测试--创建Vuser脚本--定义场景--运行场景--分析结果
规划负载测试:定义性能测试要求,例如并发用户数、典型业务流程和要求的响应时间
创建Vuser脚本:在自动化脚本中录制最终用户活动
定义场景:使用LoadRunner Controller设置负载测试环境
运行场景:使用LoadRunner Controller驱动、管理并监控负载测试
分析结果:使用LoadRunner Analysis创建图和报告并评估性能
熟悉HP Web Tours
HP Web Tours应用程序是一个基于Web的旅行社系统,可以连接到Web服务器,
搜索航班、预定机票并查看航班路线
打开HP Web Tours应用程序:
选择开始>程序>HP LoadRunner>Samples>Web>HP Web Tours应用程序
备注:启动前先启动Web服务器,选择开始>程序>HP LoadRunner>Samples>Web>启动Web服务器
确保LoadRunner安装在默认的计算机目录下;如果没有安装在默认目录下,将无法打开HP Web Tours应用程序
HP Web Tours应用程序要求使用安装了Java的浏览器;有关详细信息,请参阅相关Java文档
HP Web Tours默认User name为:jojo;默认Password为bean
创建负载测试:
使用10个并发用户对一个数据库应用程序运行负载测试,并分析结果(LoadRunner试用版最多能使用10个Vuser;
1、打开HP LoadRunner窗口
选择开始>程序>HP LoadRunner>LoadRunner
2、打开Controller
在LoadRunner Launcher窗口中单击运行负载测试;默认情况下,LoadRunner Controller打开时将显示”新建场景“对话框
单击取消
3、打开示例测试
在Controller菜单中,选择文件>打开,然后打开<LoadRunner>\tutorial目录中的demo_scenario.lrs
将打开LoadRunner Controller的”设计“选项卡,demo_script测试将出现在”场景组“窗体中
你可以看到已经分配了10个Vuser来运行此测试
注:如果LoadRunner没有安装在默认目录下,脚本路径会出错(脚本路径将显示为红色);要输入正确的路径,请选择脚本并单击
向下箭头。单击浏览器按钮并转至<LoadRunner>\tutorial目录中的demo_script,然后单击确定
运行负载测试
在运行选项卡中,单击开始场景按钮;将出现Controller运行视图Controller开始运行场景
在”场景组“窗口中,可以看到Vuser逐渐开始运行在系统中生成负载
你可以通过联机图像看到服务器对Vuser操作的响应情况
监控负载测试
使用LoadRunner的一套集成监控器可以评测负载测试期间系统每一层的性能以及服务器和组件的性能;
LoadRunner包含多种后端系统主要组件(Web、应用程序、网络、数据库和ERP/CRM)的监控器
1、查看默认图像
默认情况下,Controller显示”正在运行Vuser“图、”事物响应时间“图、”每秒点击次数“图和”Windows资源“图;
前三个不需要配置,Windows资源控制器后面进行介绍
正在运行Vuser-整个场景:通过此图可以监控在给定时间内运行的Vuser数目;下图可以看到Vuser以每秒2个的速度逐渐开始运行
事物响应时间-整个场景:通过此图可以监控完成每个事物所有的时间;你可以看到客户登陆、搜索航班、购买机票、查看线路和注销所用的时间
另外还可以看到,随着越来越多的Vuser登录到被测试的应用程序进行工作,事物响应时间逐渐延长,提供给客户的服务水平也越来越低
每秒点击次数-整个场景:通过监控运行期间Vuser每秒向Web服务器提交的点击次数(HTTP请求数),通过这个可以了解服务器中生成的负载量
Windows资源:通过监控场景运行期间评测的Windows资源使用情况(CPU、磁盘或内存利用率
2、查看错误信息
如果计算机负载很重,可能会发生错误
在”可用图“数中,选择错误统计信息图,并将其拖动到”Windows资源“的窗口中;”错误统计信息“图提供场景运行期间所发生
错误的详细数目和发生时间;错误按照来源分组(在脚本中的位置或负载生成器的名称)
在上图中你可以看到5分钟后,系统开始不断发生错误;这些错误是由于响应时间延长,导致发生超时而引起的
分析结果
测试运行结束后,LoadRunner会提供由详细图和报告构成的深入分析;(后面介绍)
LoadRunner基础知识的更多相关文章
- 【Loadrunner基础知识】web_get_int_proterty
1.函数作用:记录http请求的响应信息 2.函数参数: HTTP_INFO_RETURN_CODE : http请求返回的状态码: HTTP_INFO_DOWNLOAD_SIZE : 返回页面下载的 ...
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- RabbitMQ基础知识
RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
随机推荐
- java篇 之 java概念
Jvm:java虚拟机,让java拥有跨平台的能力,一次编写,导出运行 Java优点:提供了一个解释性环境(多线程,可执行程序跨平台,加快开发,支持动态更新) 没有指针,有垃圾将回收器(回收内存) 执 ...
- 第六届SD省赛 Circle of Friends
Circle of Friends Time Limit: 2000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descr ...
- github+jekyll个人博客搭建
Thanks to https://blog.csdn.net/Hanghang_/article/details/78944672 跟着这个博客一步步搭建,从jekyll官网上找到自己喜欢的主题. ...
- C++ 左值与右值 右值引用 引用折叠 => 完美转发
左值与右值 什么是左值?什么是右值? 在C++里没有明确定义.看了几个版本,有名字的是左值,没名字的是右值.能被&取地址的是左值,不能被&取地址的是右值.而且左值与右值可以发生转换. ...
- STL初始化initializer_list
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <string.h&g ...
- Daily Codeforces 计划 训练时录
时间 场次 过题数目 补题数目 难易度 2019.4.7 codeforces-1141 ...
- 2019全国大学生信息安全竞赛部分Web writeup
JustSoso 0x01 审查元素发现了提示,伪协议拿源码 /index.php?file=php://filter/read=convert.base64-encode/resource=inde ...
- 多项式求导系列——OO Unit1分析和总结
一.摘要 本文是BUAA OO课程Unit1在课程讲授.三次作业完成.自测和互测时发现的问题,以及倾听别人的思路分享所引起个人的一些思考的总结性博客.本文第二部分介绍三次作业的设计思路,主要以类图的形 ...
- 五十七、linux 编程——UDP 编程 域名解析
57.1 介绍 57.1.1 域名解析 57.1.2 域名解析函数 gethostent 可以获取多组,gethostbyname 只可以获取一组 /etc/hosts 文件设置了域名和 IP 的绑定 ...
- Python——合并指定文件夹下的所有excel文件
前提:该文件夹下所有文件有表头且具有相同的表头. import glob # 同下 from numpy import * #请提前在CMD下安装完毕,pip install numppy impor ...