热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

lr接口压测_LoadRunner如何进行接口的压力测试

主要压测的时候需要开发提供相关接口文档,或者自己录制。左侧的Name都是开发提供的接口参数名称,Value是相应的参数值。Action为开发给的测试地址

主要压测的时候需要开发提供相关接口文档,或者自己录制。

左侧的Name都是开发提供的接口参数名称,Value是相应的参数值。Action为开发给的测试地址。

PS:注意在测试的时候设置Controller的Run time seting  Pacing的值为With a fixed delay of X seconds。还要注意在压测的时候观察服务器的CPU利用率已经内存使用情况。

web_submit_data("insert",

"Action= http://116.211.23.121/app/Jigsaw/GetResult.ashx",

"Method=GET",

"Referer= http://116.211.23.121/home.aspx",

"Mode=HTML",

ITEMDATA,

"Name=uid","Value={myUid}",ENDITEM,

"Name=id","Value=4",ENDITEM,

"Name=time","Value=00:00:{ss}",ENDITEM,

"Name=piecewn","Value={myPiecewn}",ENDITEM,

"Name=piecehn","Value={myPiecehn}",ENDITEM,

LAST);

char str[1000];

strcpy(str,"SNSID=7999&UserID=1&CommentsTypeID=1&CommentsID=1&AuthorID=1&CommentsContent=1");

web_custom_request("Publish",

"Url= http://10.240.248.103:7006/Comment/{IID}",

"Method=POST",

"Referer= http://10.240.248.103:7006/Comment/{IID}",

"Mode=HTTP",

str,

LAST);

这也是一种写法,可以跟web_submit_data互换。这种写法更利于拼接参数。

这个只是一个简单的LR API函数,还需要对脚本使用web_reg_find()做一个最终的结果检查:

PS:下面的例子是我以前写的一个脚本的例子,对最终的返回结果要最好有一个结果检查,这样子比较合理些。

Action()

{

web_reg_find("Search=Body", //定义查找范围

"SaveCount=result", //定义查找计数变量名称

"Text=领取成功", //定义查找内容

LAST);

//发送请求

web_submit_data("GetActivativeCode",

"Action= http://192.168.101.181:8931/project/libao/bf.asp",

"Method=POST",

"Referer= http://192.168.101.181:8931/project/libao/bf.asp",

"Mode=HTML",

ITEMDATA,

"Name=Jcode","Value=4",ENDITEM,

"Name=Account","Value=zhzh1986",ENDITEM,

LAST);

if (atoi(lr_eval_string("{result}")) > 0) //判断如果Welcome字符串出现次数大于0

lr_output_message("Log on successful."); //在日志中输出Log on successful

else

//如果出现次数小于等于

lr_error_message("Log on failed"); //在日志中输出Log on failed

return 0;

}

下面给楼主2个例子,参考以下,然后主要压测的时候需要开发提供相关接口文档,或者自己录制。

左侧的Name都是开发提供的接口参数名称,Value是相应的参数值。Action为开发给的测试地址。

PS:注意在测试的时候设置Controller的Run time seting  Pacing的值为With a fixed delay of X seconds。还要注意在压测的时候观察服务器的CPU利用率已经内存使用情况。

web_submit_data("insert",

"Action= http://116.211.23.121/app/Jigsaw/GetResult.ashx",

"Method=GET",

"Referer= http://116.211.23.121/home.aspx",

"Mode=HTML",

ITEMDATA,

"Name=uid","Value={myUid}",ENDITEM,

"Name=id","Value=4",ENDITEM,

"Name=time","Value=00:00:{ss}",ENDITEM,

"Name=piecewn","Value={myPiecewn}",ENDITEM,

"Name=piecehn","Value={myPiecehn}",ENDITEM,

LAST);

char str[1000];

strcpy(str,"SNSID=7999&UserID=1&CommentsTypeID=1&CommentsID=1&AuthorID=1&CommentsContent=1");

web_custom_request("Publish",

"Url= http://10.240.248.103:7006/Comment/{IID}",

"Method=POST",

"Referer= http://10.240.248.103:7006/Comment/{IID}",

"Mode=HTTP",

str,

LAST);

这也是一种写法,可以跟web_submit_data互换。这种写法更利于拼接参数。



推荐阅读
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 本文详细介绍了GetModuleFileName函数的用法,该函数可以用于获取当前模块所在的路径,方便进行文件操作和读取配置信息。文章通过示例代码和详细的解释,帮助读者理解和使用该函数。同时,还提供了相关的API函数声明和说明。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • springmvc学习笔记(十):控制器业务方法中通过注解实现封装Javabean接收表单提交的数据
    本文介绍了在springmvc学习笔记系列的第十篇中,控制器的业务方法中如何通过注解实现封装Javabean来接收表单提交的数据。同时还讨论了当有多个注册表单且字段完全相同时,如何将其交给同一个控制器处理。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • 本文介绍了游标的使用方法,并以一个水果供应商数据库为例进行了说明。首先创建了一个名为fruits的表,包含了水果的id、供应商id、名称和价格等字段。然后使用游标查询了水果的名称和价格,并将结果输出。最后对游标进行了关闭操作。通过本文可以了解到游标在数据库操作中的应用。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • ALTERTABLE通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法ALTERTABLEtable{[ALTERCOLUMNcolu ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
author-avatar
laknm_456
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有