有关loadrunner的几个问题

1.LoadRunner分哪三部分?

 用户动作设计;场景设计;测试数据分析

2.使用LoadRunner 完成测试一般分为四个步骤: 

1Virtual User Generator 创建脚本

  创建脚本,选择协议录制脚本编辑脚本检查修改脚本是否有误

2)中央控制器(Controller)来调度虚拟用户

  创建Scenario,选择脚本设置机器虚拟用户数设置Schedule  如果模拟多机测试,设置Ip Spoofer

3)运行脚本分析scenario

4)分析测试结果

3.loadrunner中的设置线程和进程的区别

loadrunner中,在进行运行设置中有一项选择,是按进程运行Vuser或按线程运行Vuser?下面进行分别来讲:

1.按进程运行VuserController将使用驱动程序mdrv运行Vuser。如果按进程方式运行每个Vuser,则对于每个Vuser实例,都将启动一个mdrv进程。如果设置了10Vuser,则在任务管理器中出现10mdrv进程。多个mdrv进程肯定会占用大量内存及其他系统资源,这就限制了可以在任一负载生成器上运行的Vuser的数量。

2.按线程运行Vuser:即设置了10Vuser,其只会调用一个驱动程序mdrv.而每个Vuser都按线程运行,这些线程Vuser将共享父进程的内存段。这就节省了大量内存控件,从而可以在一个负载生成器上运行更多的Vuser。任何选择都是有两面性的。选择线程方式运行Vuser会带来一些安全问题。因为线程的资源是从进程资源中分配出来的,因此同一个进程中的多个线程会有共享的内存空间,这样可能会引起多个线程的同步问题,调度不好,就会出问题,不如A线程要用的资源就必须等待B线程释放,而B也在等待其他资源释放才能继续。这就会出现这样的问题:同一个测试场景,用线程并发就会超时失败或报错,而用进程并发就没错。虽然会有区别,但两种方式的运行都会给服务端造成的压力是一样的。

4.LR中的API分为几类?

A:通用的API:,就是跟具体的协议无关,在任何协议的脚本里都能用的;B:针对协议的:像lrs前缀是winsock的;lrd的是针对database;

C:自定义的:这个范围就比较广了;比如至少有Java Vuser API lrapiXML API。还可以添加WindowsAPI和自定义函数库。

5.如何理解TPS?

答:TPS主要还是体现服务器对当前录制的事务的处理速度快慢。TPS高并不代表性能好。

TPS Transactions Per Second 写,也就是事务数/ 秒。它是软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,最终利用这些信息来估计得分。客户机使用加权协函数平均方法来计算客户机的得分,试软件就是利用

客户机的这些信息使用加权协函数平均方法来计算服务器端的整体TPS得分。

6.为什么要对脚本进行参数化

a) 为了减少脚本的大小和脚本数量,借助参数化我们可以减少脚本的数量,

如果不进行参数化,我们为了达到目标可能要拷贝并修改很多个脚本。

b) 使业务更接近真实的客户的业务,每个虚拟用户使用不同参数值来模拟

这样才接近客户的实际情况


相关标签:

分享者:wfl
分享于:2017-02-13
博 客:wfl博客
专 题: 无
位 置:测试攻城狮__测试基础
分享者的其他文章

评论: