Loadrunner从入门到精通教程(一)

第一章:性能测试基础

1-1.大话性能测试

 性能测试 是什么

    使用自动化测试工具对产品按一定的性能指标进行测试。解决心性能平衡.给用户最好的体验。

  性能测试的时代背景,作用。

 大数据时代

网站(BA).软件(T),游戏--

金融银行,证券系统,教育(教务系统),交通(12306)--

1-2 性能测试那些事

一.性能测试基本流程

二、Web性能测试常用指标

1.响应时间(Response time)

    响应时间就是用户感受软件系统为其服务所耗费的时间,对于网站系统来说,响应时间就是从点击了一个页面即是开始,到这个页面完全在浏览器里展现即是结束的车这一段时间间隔

响应时间:2-5-8原则

2-5秒还额可以;

5-8秒嘟嘟满,还可以接受

超过8秒没响应,慢

2.吞吐量(Throughut)

指的是在单位时间内客户端和服务器成功传送数据的数量

3.资源使用率(Resource utilization)

常见的资源有:cpu占用率、内存使用率、磁盘I/O、网络I/O

4.每秒点击数(Hits per second)

指客户端每秒钟向服务器提交的请求数量,如果客户端发出的请求数量越多,与之相对的平均吞吐量也应该越大。

5.并发用户数(Concurrent users)

只在客户端的一批用户同时执行一个操作的数量。并发数反映了软件系统的并发处理能力。两种错误理解:1.使用系统的全部用户数。2用户在线数量(例如qq在线,只是挂q,不产生请求)

1-3 性能测试工具-loadRunner12

1-4 机票特定网站搭建

当启动server服务时,可能弹出1080端口被占用的提示

1.提示1080端口被占用的解决办法

Cmd:输入命令netstat -ano查找各端口所在进程的PID,找到1080的程序的PID,在资源管理器将其关闭,再重启。

2.提示Internal error:your ruquet was unsuccessful

Cannot crate CGI process -program not found

安装 strawberry-perl-5.12.3.0和例如安装在一个盘符

第二章:LoadRunner的使用

2-1 脚本创建流程

2-2  测试脚本的准备工作

                                            测试脚本概要

Init,action,end 说明

Init 录制的一般是业务流程开始之前的初始化工作(如登陆,服务器初始化)。

Action 录制的一般是业务流程操作的事件

End 录制的一般是退出的时候执行的操作。(用户退出,注销)

Int和 end不能迭代多次,只能运行一次,action可以迭代多次运行。

如果需要测试需求没有对业务流程没有重复的需求,可以都放在action部分。有重复的需求,如果要求一个用户登陆之后要求重复订票10次,就需要把订票部分的脚本放在action之中进行迭代。登录部分放在init,退出部门在end。

2-3 订票网站脚本脚本录制

2-4脚本解析

2-5 脚本回放设置

2-6回放脚本

2-7设置关联

2-8HTML模式与URL模式

在默认情况下,选择“HTML-based script”,说明脚本中采用HTML页面的形式来标识,这种方式的脚本容易维护,容易理解,推荐以这种方式录制。

“URL-based script ”说明

脚本中的标识采用基于URL的方式,所有的HTTP的请求都会北路至下来,单独生成函数,

所以URL模式生成的脚本会显得有些杂乱。URL录制的脚本中Web_concurrent_start函数是开发组开始的标记,web_concurrent_end是开发组的结束标记。在并发组中的函数不是立即执行的。在并发组开始时,所以函数首先本记录下来,当并发结束时,所以的函数并发执行。

选择HTML还是YRL录制,有以下参考原则:

(1)基于浏览器的应用程序推荐使用HTML-based script。

(2)不是基于浏览器的应用程序推荐使用URL-based script。

(3)如果基于浏览器的应用程序中包含了JavaScript并且改脚本向服务器产生了请求,使用URL-based  script 方式录制

(4)基于浏览器的应用程序中使用了HTTPS安全协议(支付功能),使用URL-based script方式录制。

2-9 添加事务(Transaction)

1.定义

事务(Transaction)是这样一个点,我们为了衡量某个擦欧洲ode性能,需要在操作的开始和结束的位置插入这样一个范围,这样就定义了一个transaction。

2原因

从性能的及哦啊度处罚,我们需要知道不同的操作所花费的时间,这样我们就可以衡量不同操作的对被测系统所造成的的影响,那么我们如何知道不同的操作所花费的时间,这就用到了事务,我们在操作之前插入一个事务开始标识,在操作完成后插入一个结束标识,这样我们就知道了操作所花费的时间

3 作用

事物的作用:loadRunner 运行到该事务的开始点时,loadRunner就会开始计时,直到运行到该事物的结束点时,计时结束。这个事物的运行时间在LoadRunner的运行结果中会有反映。提示的校LoadRunner中的事务就是一个计时标识,LoadRunner在运行过程中一旦发现事务的开始标识,就开始计时,一旦发现事务的结束标识,则计时结束,这个过程中得到的时间即为一个事务的时间,通常事务时间反映的是一个操作过程的响应时间。

4.函数构造

 事务开始函数公共包括一个参数,就是事务的名称,事务结束函数共包括两个参数,第一个参数是事物的名称,第二个参数是事务的状态。事务状态可以为LR_Pass:返回“pass” 返回代码;LR_Fall:返回“Fail”返回代码;LR_STOP:返回“stop”返回代码:LR_AUTO:自动返回检测到的转台。Duration标识事务的完成响应时间,wasted time包括十五中函数自身执行小号的时间。

设置登录操作事务以及运行日志查看事务的响应时间;LR_RUTO自动检测结果,若使用LR_Fall或LR_Pass则需要结合if条件语句进行判断

2-10 脚本参数化

参数化设置

1.Select next row 【选择下一行】:

顺序(Sequential):按照参数化的数据顺序,一个个的来取。

随机(Random):参数化中的数据,每次随机的从中抽取数据。

唯一(Unique):为每个虚拟用户分配一条唯一的数据。

2.Update value on 【更新时的值】:

每次迭代(Each iteration):每次迭代时取新的值。

每次出现(Each Occurrence):每次参数化时取新的值,这里强调前后两次取值不能相同。

只取一次(once):参数话中的数据,一条数据只能抽取一次

前提:假设参数化表中有15条数据,进行不同组合的结果

Select next row 【选择下一行】Update value on 【更新时的值】

Replay Result

【结果】

顺序(Sequential)每次迭代( Each iteration)

结果:分别将15条数据写入数据表中

功能说明:每迭代一次取一行值,从第一行开始取。当所有的值取完后,再从第一行开始取 如:如果参数化文件中的15条数据,而迭代社会混子为16次,那执行结果中,参数化文件第一行的数据有两条

顺序(Sequential)

每次出现(Each Occurrence)

每次参数化时取新的值,这里强调前后两次取值不能相同。

结果:分别将15条数据写入数据表中

功能说明:每迭代一次取一行值,从第一行开始取。当所有的值取完后,再从第一行开始取 如:如果参数化文件中的15条数据,而迭代社会混子为16次,那执行结果中,参数华文件第一行的数据有两条

顺序(Sequential)只取一次(once)

结果:分别将15条数据写入数据表中

功能说明:每次迭代都取参数化文件中的第一行的数据

随机(random)每次迭代(Each iteration)

结果:表中写入15条数据,但可能有重复数据出现

功能说明:每次从参数化文件中随机选择一行数据进行赋值

随机(random)每次出现(Each Occurrence)

结果:表中写入15条数据,但可能有重复数据出现

功能说明:每次从参数化文件中随机选择一行数据进行赋值

随机(random)只取一次(once)

结果:表中写入15条数据,但可能有重复数据出现

功能说明:第一次迭代时随机从参数化文件中取一行数据,后面每次迭代都用第一次迭代的数据

唯一(unique)

每次迭代(Each iteration)

自动分配模块大小

结果:分别将15条数据写入数据表中

功能说明:第一次迭代参数化文件中的第一次数据,第二次迭代取第二条数据,以此类推

注:如果设置迭代次数为16次。结果:在执行第16次迭代时回抛异常,异常日志可在loadrunner的回放日志(replylog)中看到

唯一(unique)

每次出现(Each Occurrence)

补偿为1

结果:分别将15条数据写入数据表中

功能说明:第一次迭代参数化文件中的第一次数据,第二次迭代取第二条数据,以此类推

注:如果设置迭代次数为16次。而参数化文件中只有15条数据,明显数据不够,此时可以设置“when out  of values”属性来判断当数据不够时的处理方式

About vuser:中断虚拟用户

continue in cyllc manage:循环取参数化文件中的值,即:当参数化文件中的取值完后又从参数化文件的第一行开始取值

continue with last value:继续用最后一天数据

唯一(unique)只取一次(once)

结构:表中写入15条相同数据

功能说明:每次都取参数文件中的第一条数据进行赋值

   

小练习:按照下面娇而不能、参数化设置、运行时设置,运行脚本体会参数化设置3*3=9种取值方式

脚本action

lr_output_message("第一次取值:%s",lr_eval_string("{paramtest}"));

lr_output_message("第一次取值:%s",lr_eval_string("{paramtest}"));

参数化设置

运行时设置

 

  • 27
    点赞
  • 249
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
LoadRunner是一款性能测试工具,用于模拟多用户并发访问系统,以评估系统在不同负载条件下的性能和稳定性。下面是一个简要的LoadRunner教程,介绍如何使用LoadRunner进行性能测试: 1. 安装和配置LoadRunner: - 下载并安装LoadRunner软件。 - 配置LoadRunner的运行环境和必要的设置。 2. 创建测试脚本: - 打开LoadRunner并创建一个新的脚本。 - 选择合适的协议(如HTTP、Web Services、SAP等)。 - 录制脚本:使用Vugen模块录制用户在系统中的操作和交互过程。 3. 参数化和数据驱动: - 根据需要,对录制的脚本进行参数化,以使脚本能够模拟不同用户、不同数据的访问。 - 加载外部数据源,如Excel、CSV等文件,以实现数据驱动的测试。 4. 脚本维护和测试设计: - 对录制的脚本进行修改和优化,以保证测试的真实性和可靠性。 - 设计负载模型:根据实际情况和需求,设置并配置虚拟用户数量、并发用户数、事务响应时间等参数。 5. 运行和监控测试: - 配置并启动性能测试场景。 - 监控系统资源使用情况,收集性能指标和日志数据。 - 分析测试结果,识别性能瓶颈和优化建议。 6. 测试报告和分析: - 生成测试报告,包括测试摘要、性能指标、图表等。 - 分析并解释测试结果,提供性能改进的建议和措施。 请注意,LoadRunner是一个功能强大的工具,上述教程仅提供了一个简要的概述。深入了解和熟练使用LoadRunner需要进一步学习和实践。你可以参考官方文档、在线教程、培训课程等资源,以获取更详细的LoadRunner教程和指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值