最近一直在用Loardrunner做性能测试,记录下自己在工作中遇到的问题。

  • LR的基本设置

首先是录制,在录制前选择TOOLS-recording options 在General中选择recording方式HTTP协议的选择HTML-based script方式,如果是HTTPS协议选择URL-based script方式;选择HTTP  propertie-Advanced,support charset选择UTF-8,此处如果在回放过程中,还是有乱码,检查被录制代码中是否有编码不是UTF-8的设置。

然后选择回放方式,TOOLS-General Options选择Dispaly标签页,所有的选项都选中。在回放时就会显示录制的页面了。

设置运行时选项,Vuser-Run time-settings,住要设置Think Time,Internet Protocol-Preferences,Run logic,Log,Miscellaneous次选项下,一般设置Vuser按线程运行,error  handing一般选择continue on error当错误发生时继续运行。

  • LR脚本的优化

录制好的脚本,首先进行回放,回放成功后开始对脚本进行优化,使其可以更真实的模拟用户操作。

在优化过程中一般需要添加事务、集合点、参数化、关联。

事务是为了记录服务器的响应时间(响应时间应该包括了用户的请求时间、网络延迟时间、WEB服务器到应用服务器,应用服务器到数据库服务器传递时间,以及各种服务器返回的响应时间)在添加事务时需要注意不要把思考时间放在事务内。事务的结束可以是自动的也可以通过编写代码来进行fail或者pass的判断。

集合点是为了让虚拟用户在同一时刻对服务器进行访问,此功能可用在对服务器进行压力操作时使用。

参数化是对变量进行多种赋值,使模拟操作更真实。

关联在脚本优化中经常用到,当服务器给客户端每次返回不同的值时,需要用关联来捕获该值。

  • LR场景设计

a.分析用户模型:根据系统记录日志对用户操作进行建模和分析,如果没有记录日志可采用第三方工具获取用户行为模型。

b.编写测试用例:编写测试功能点的测试用例,其实就是用户的操作顺序。

c.建立用户场景:具备以上条件后,进行场景设置。

在Design菜单下,选择Start  Vusers要模拟多少个用户在start处就填写多少个用户,接着选择加压方式,一般不会全部进行加压,场景默认15ss启动2个VUSER,这里可以根据实际的用户行为进行设计;Duration持续时间的设置,持续时间是指在本次场景执行完以后,如果持续时间还没有完成会继续进行下一次的场景运行;Stop  Vusers设置用户的停止行为,一般保持和启动用户相同的设置。

在Run菜单下,添加计数器。

在场景运行过程中经常会遇到各种各样的超时问题,在场景中选择被执行的脚本,点击右键,选择run-time  settings——Internet Protocol——Preferences——Options

调整HTTP-request connect  timeout(sec)                HTTP-request receive timeout(sec)                HTTP-keep-Alive timeout(sec)                Step  download timeout(sec)   值,一般设置在600sec,自己在项目中都设置为1200sec

在design中选择TOOLS-options下的Timeout标签页调整时间

在design中选择场景菜单下的集合点,在policy中设置集合点策略。

  • 在LR中调用java

选择协议为java  vuser,在Vuser—run-time settings菜单下选择Classpath,把需要用到的jar包导入进来,一般系统会默认自己导入JAR包,如果不对要自己删除后,重新添加有用jar包

lr总结的更多相关文章

  1. LR破解版录制手机脚本(一)模拟器录制

    最近在网上听到好多童鞋都在问如何用LR做手机性能测试,恰好自己对这方面也挺感兴趣,经过查阅很多资料,形成此文档以做备注~!如果有感觉我写的不对的地方,敬请指正,谢谢~!     其实自从LR12出来之 ...

  2. LL LR SLR LALR 傻傻分不清

    [转] 一:LR(0),SLR(1),规范LR(1),LALR(1)的关系     首先LL(1)分析法是自上而下的分析法.LR(0),LR(1),SLR(1),LALR(1)是自下而上的分析法.   ...

  3. 逻辑回归(LR)总结复习

    摘要: 1.算法概述 2.算法推导 3.算法特性及优缺点 4.注意事项 5.实现和具体例子 6.适用场合 内容: 1.算法概述 最基本的LR分类器适合于对两分类(类0,类1)目标进行分类:这个模型以样 ...

  4. LR中的时间戳函数web_save_timestamp_param

    以前真没注意过后面看某个群有人说到这个函数一查,还真有,那么处理时间戳就简单很多了,我们经常在各种网站上看到类似于这样的时间戳 51Testing软件测试网"d bLq!uR&am ...

  5. 逻辑回归LR

    逻辑回归算法相信很多人都很熟悉,也算是我比较熟悉的算法之一了,毕业论文当时的项目就是用的这个算法.这个算法可能不想随机森林.SVM.神经网络.GBDT等分类算法那么复杂那么高深的样子,可是绝对不能小看 ...

  6. 对LR关联的一些理解

    从接触LR关联的迷茫,到现在略有感悟,小记期间的一些理解. 一开始认识关联是在LR自带学习例子,需要关联session,也知道了自动关联,手动关联以及边录制边关联. 在使用关联的过程中,也学习了web ...

  7. LR中线程和进程的区别

    LoadRunner中的进程与线程    1.进程与线程的区别: 进程和线程的区别是什么?进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性.进程和线程的区别 ...

  8. 逻辑回归算法的原理及实现(LR)

    Logistic回归虽然名字叫"回归" ,但却是一种分类学习方法.使用场景大概有两个:第一用来预测,第二寻找因变量的影响因素.逻辑回归(Logistic Regression, L ...

  9. LR录制Flex+Web,登录功能之登录密码出错的处理

    在LR中录制好更改密码脚本,Controller中使用少量用户进行:单用户多迭代.多用户单迭代.多用户多迭代,运行正常,于是使用490Vuser+2iteration修改980个用户的密码,部分 Vu ...

  10. LR自定义函数以及调用

    2.2.自定义函数以及调用 2.2.1.虚拟用户编程,使用C# 语言DLL 在VS中建立DLL类库项目,编写函数时使用public声明:实现函数后编译生成DLL: 在LR中建立 .Net Vuser脚 ...

随机推荐

  1. bzoj4715 囚人的旋律

    4715: 囚人的旋律 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 74  Solved: 48[Submit][Status][Discuss] ...

  2. ios 逆向

    Theos https://www.jianshu.com/p/307243ea40e4 Dumpsdecrypted https://www.cnblogs.com/wangyaoguo/p/908 ...

  3. vim 单文件中查找方法

    1.vim 单文件中查找方法 正常模式下使用 / 或 ? 命令执行向后搜索或向前搜索 /love   从光标位置向前搜索关键词 love ?love   从光标位置向后搜索关键词 love 正常模式下 ...

  4. Rabbitmq--topic

    一.前言 前面讲到direct类型的Exchange路由规则是完全匹配binding key与routing key,但这种严格的匹配方式在很多情况下不能满足实际业务需求.topic类型的Exchan ...

  5. HDU6129 规律

    LINK 题意:n个数进行m次前缀和异或和后的情况,其中$n,m(1\leq n\leq2\times10^5,1\leq m\leq10^9)$. 思路:看到m这么大,肯定要分解m的,又是异或和,二 ...

  6. 软件测试(三)—— 参数化测试用例(Nextday.java)

    import static org.junit.Assert.*; import java.lang.reflect.Array; import java.util.Arrays; import ja ...

  7. How to ignore SSL certificate errors in Apache HttpClient 4.4

    public static CloseableHttpClient acceptsUntrustedCertsHttpClient() throws KeyStoreException, NoSuch ...

  8. HttpClient 模拟登陆知乎

    最近做爬虫相关工作,我们平时用HttpWebRequest 比较多,每一个Url都要创建一个HttpWebRequest实例, 而且有些网站验证比较复杂,在登陆及后续抓取数据的时候,每次请求需要把上次 ...

  9. XMLHttpRequest 整理

    看了SF 上的一篇文章感触颇深:你真的会使用XMLHttpRequest吗? 在这我写上我读后的笔记: <!DOCTYPE html> <html lang="en&quo ...

  10. scandir函数的研究【笔记】

    以下是本人的学习笔记,代码并非原创,均摘自官方源码,贴出来仅供学习记录用 scandir 的使用要注意内存泄漏的问题 scandir函数实现: vi ./uClibc-0.9.33.2/libc/mi ...