Loadrunner场景设置

本文介绍LoadRunner中用户逐渐递增场景的设置方法、思考时间与随机时间的配置策略、集合点与事务的功能及使用技巧,帮助读者更好地进行性能测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、用户逐渐递增的场景
2、思考时间和随机时间的取值方法
3、集合点的作用(实现并发访问的目的)
4、事务的作用(反映响应时间评价性能)
5、使用事务的原因
6、事务的使用方法 

1、Loadrunner场景设置-----用户逐渐递增的场景

方法一:(网络来源)在设置LoadRunner测试场景时,很多时候都需要设置用户逐渐递增的场景。可能大家通常的做法都是逐步增加用户数,并且分成多次去运行场景,比如第一次运行用100用户,第二次用200用户,第三次用300用户等等。


其实,还可以有另外一种方法,就是针对同一个脚本设置多个组,使用组策略(点击Edit Schedule按钮,选择Schedule by Group),第一个组为初始用户数,如100,第二个组以50或100递增(并不是第一个组100,第二个组200,第三个组300,而是在递增的时候设置递增数).

每个用户场景都持续稳定地运行一段时间,这样可以把几种用户场景下的测试在一次场景的运行过程中就一次性执行完毕,而且还有一个好处是可以把多个用户场景下的性能结果都整合到同一个结果中,也方便对比、分析。

2、Loadrunner场景设置-----思考时间和随机时间的取值方法

如果录制思考时间是4秒,那么随机时间可以是2-6之间的任意值,即随机时间的取值在录制思考时间的50%到150%之间。

3、集合点的作用(实现并发访问的目的)

集合点(Rendezvous)就是一个并发访问的点,在测试计划中,可能会要求系统能够承受1000人同时提交数据,在LoadRunner 中可以通过在提交数据操作前面加入集合点,这样当零散的虚拟用户运行到提交数据的集合点时,LoadRunner就会检查同时有多少用户运行到集合点,如果不到1000 人,LoadRunner 就会命令已经到集合点的用户在此等待,当在集合点等待的用户达到1000人时,LoadRunner 命令1000 人同时去提交数据,并发访问的目的。 

备注:集合点规则是在Controller中的Scenario-Rendezvous

4、场景设置------事务的作用(反映响应时间评价性能)

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

 

5、Loadrunner场景设置----使用事务的原因 

下面我们说说为什么在LoadRunner中使用事务。
为什么使用事务的原因是多种多样的,总结下来如下五点所示:
1、事务是LoadRunner度量系统性能指标的唯一手段;
(没有事务则没有办法衡量系统的响应时间,也许有人说LoadRunner可以通过编程来计时得到,不错如果你编程能力够强是能够实现的,但肯定不如LoadRunner中的事务用的简单而且方便)  

2、事务能够用于度量高风险业务流程的性能指标;
3、事务能够度量在一组操作中每一步的性能指标;
4、通过事务计时实现了不同压力负载下的性能指标对比;
5、通过事务计时可以帮助定位性能瓶颈;

6、Loadrunner场景设置----事务的使用方法

使用事务有如下几种方法:
1、方法一:脚本生成后,手动插入事务;
方法:在LoadRunner脚本中点击鼠标:右键,选择“Insert”→“Start Transaction”弹出一个对话框,输入一个事务名字(注:事务名字可以为中文、可以为英文,也可以中英文混合,但推荐的做法是起一个容易理解的名称,例如想知道登录所花费的时间,则插入事务可以命名为login或登录);“Start Transaction”插入完成后,还需要插入一个“End Transaction”,用以标识事务结束;
注:Start Transaction和End Transaction需要成对出现,如果仅插入Start Transaction则脚本编译会提示错误;
此外,还可以通过LoadRunner vugen中的“Insert”菜单插入Start Transaction和End Transaction;  

2、方法二:在脚本录制过程中插入Start Transaction和End Transaction;在脚本录制过程中,通过录制工具条上的Start Transaction
和End Transaction图标插入事务,

3、方法三:通过Run-time Settings中的Automatic Transactions自动生成事务,

注:该种方法插入的事务仅能在LoadRunner Controller中的图表和报告中看到在脚本的log中看不到。

 

 

 

### 如何在LoadRunner设置固定字符用于场景配置 在LoadRunner中,为了确保测试脚本能够按照预期执行并与其他组件交互,有时需要设定特定的参数化值或固定字符串。这可以通过Vuser初始化部分中的`lr_save_string`函数来实现。 对于希望在整个场景运行期间保持不变的具体字符或字符串,在编写VuGen脚本时可以利用如下方法: ```c // 将固定的字符串保存到指定变量名下 lr_save_string("FixedValue", "my_fixed_variable"); ``` 上述代码片段展示了如何创建一个名为`my_fixed_variable`的变量并将字符串`"FixedValue"`赋给它[^1]。此方式适用于任何需要传递静态数据的情况,比如用户名、密码或者其他不随迭代变化的数据项。 当涉及到更复杂的配置需求时,还可以考虑通过外部文件读取这些固定字符,并将其导入至LoadRunner环境中作为全局参数使用。这样做的好处在于便于管理和维护不同环境下的差异性输入。 另外值得注意的是,如果计划将此类固定字符应用于多个事务或者多次调用,则应该确保它们被正确地定义于合适的范围之内——即要么是在整个虚拟用户级别上共享;要么仅限于单个交易内部有效。 最后提醒一点关于版本兼容性的注意事项:由于提到SAPGUI存在某些API功能上的局限性(如`sapgui_tree_set_column_order`不可用于LoadRunner 9.5),所以在涉及具体操作特别是针对第三方控件的时候要特别留意所使用的LoadRunner版本特性以及可能存在的已知问题。 #### 示例代码展示如何设置固定字符 下面是一个简单的例子说明怎样在一个HTTP/HTML协议类型的LoadRunner脚本里设置和应用固定字符: ```c vuser_init() { // 设置固定字符为"MyFixedString" lr_save_string("MyFixedString", "fixed_value"); return 0; } Action() { web_url("example", "URL=http://www.example.com/", LAST); // 使用之前设置好的固定字符 lr_output_message("Using fixed value: %s", lr_eval_string("{fixed_value}")); return 0; } ``` 该示例首先在`vuser_init()`函数内设置了名称为`fixed_value`的固定字符,随后在实际请求过程中通过`lr_eval_string`宏获取这个预设值并打印出来验证其可用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值