- 博客(26)
- 收藏
- 关注
原创 场景重现:浏览器上点击提交/保存按钮偶发产生重复数据
一般我们针对一些比较重要的场景是需要做下弱网表单重复提交测试,比如BS收银结算、App/BS提交订单、App/BS加入购物车、限时抢购、限时礼券大放送等并发量比较高的场景;一般我们猜测,这些问题的产生比如用户或服务器网络慢,点击按钮迟迟没有反应,造成用户多次点击按钮,此时如果按钮没有做防止重复点击,可能会提交多条重复数据至后台。第二步、BS快速操作保存。可以看到快速点击后多次调用了保存接口。那么我们可以使用谷歌浏览器自带工具模拟网速慢时触发按钮的情况。我们在测试环境按照客户的步骤操作没法很好的重现。....
2022-07-28 15:38:03
790
1
原创 LoadRunner如何确定并发用户数
1、八二原则:一般可以认为80%的用户在20%的时间内完成工作,所以峰值压力的时候,一般并发数要乘以80%/20%=4举例:你想建设一个能承受500万PV/每天的网站吗? 500万PV是什么概念?服务器每秒要处理多少个请求才能应对?如果要求影响时间是3s该如何计算呢?计算模型:每台服务器每秒处理请求的数量=((80%总PV量)/(24小时60分60秒40%)) / 服务器数量 。其中关键的参数是80%、20%。表示一天中有80%的请求发生在一天的20%的时间内。24小时的20%是4.8小时,有80%
2022-04-22 17:23:28
2161
1
原创 LoadRunner12回放报错26603:解压缩缓冲区内存不足(***字节)
回放报错26603具体报错乳如下图:具体原因,可能并不准确:据说是运行过程中LR下载数据包时,一次没有下载完,然后进行压缩,就报错了;解决办法:runtime setting→Internet协议→首选项→常规→设置下网络缓冲区大小为:12288(默认是1228800000)、步骤下载超时设置为:120000重新回放即可解决。...
2022-04-14 20:31:45
922
原创 LoadRunner脚本调试--文本检查点的使用
为什么要做文本检查点LR判断脚本是否执行成功是根据服务器返回的状态来确定的,如果服务器返回的HTTP状态为 200 OK ,那么VuGen 就认为脚本正确地运行了,并且是运行通过的。实际业务上接口有可能是失败的。示例:脚本回放的时候提示的是200,Vuser就认为成功了,如下图:但实际上接口访问是失败了的。这个接口是校验是否是会员,正常返回成功是要返回会员数据的,但是这个接口直接报了签名错误,如下图:因此,我们需要设置文本检查点来校验接口返回的正确性。**检查点原理:**对返回测试结果是否
2021-10-11 12:01:31
1029
原创 LR参数化,参数化类型:唯一编号--参数化手机号
业务场景:顾客在微信端用手机号注册会员,要求如下:1、会员手机号不能重复。(因为我们压测完了需要统计压测期间能产生多少新会员)2、每个手机号注册会员后都能成功发卡(为了排除并发下只建了顾客没发卡的情况)。研究了下LoadRunner参数化类型:唯一编号,发现可以满足使用**参数化类型:唯一编号,**设置如下图:编号格式:%04d,%06d,%08d,是设置显示位数,位数不足用0填充。如果start(启动)=40,Block size per Vuser=100,编号格式:设置:%06d时:上
2021-09-22 16:55:17
583
原创 LoadRunner11代理在Win10操作系统启动不起来,或者报错:该内存不能为written
在Win10安装了LoadRunner11代理启动不起来,并有报错:该内存不能为written解决办法:在loadruner安装bin目录下,找到wplus_init_wsock.exe,选中wplus_init_wsock.exe右键选择属性,进入到兼容性页面,兼容模式选择对应的系统,我这边选择的是windows95...
2021-09-09 16:29:44
1609
转载 Jmeter中JDBC链接配置 JDBC Connection Configuration
转载:https://www.cnblogs.com/qianjinyan/p/10244345.html写的已经比较详细亲测SQLserever可以使用;
2021-07-19 16:12:37
154
原创 LR参数化,参数化类型:Fille类型--参数分配与取值规律
参数设置界面如下图:1、Select next row:下次取值怎么取(1)Sequential:按照顺序一行行的取值。每一个虚拟用户都会按照相同的顺序读取(2)Random:在每次迭代里随机的读取一个,但是在循环中一直保持不变;(3)Unique :唯一值,列表中的值只能取一次(取过一次之后再也用不到);(4) Same Line As ** :和*参数取同行的记录,通常用在有关联性的数据上面。比如做登录测试的脚本时,每个用户的密码都不同,共两列username、passwd,则设置完us
2021-07-05 18:10:57
887
1
原创 LR参数化,参数化类型:Fille类型--2列多个参数
使用场景:dat文件加载2列参数化的就是2个参数,这类参数的共同点就是,两个参数的要相对应才能请求成功。比如:参数化用户名和密码,用户user1的密码必须是pass1才能登陆成功;同理在这次项目中粉丝1394183659614900224,顾客代码必须是SZSD01_GK00000011才能进入会员中心;将FansMainId和MembershipId参数化在同一个dat文件中。参数化FansMainId选中fansmainid的值:1394183659614900224,然后右键,此处我采用
2021-05-25 17:52:46
487
原创 LR脚本录制2——录制的网站A访问了其他网站页面和接口的脚本
多代理录制 跟单代理类同,唯一不同的是ip和端口的配置,如下图 client——>loadrunner——>fiddler->server 也就是client将数据发送给loadrunner,loadrunner传给fiddler,fiddler再传递给server,server响应的途径一样。 这样就完成了client->server之间的通信Fidder设置代理刷新一下浏览器,会抓到好多请求,在这里我只想看到我所要录制的页面的请求,这个时候通过过滤规则来过
2021-05-22 18:33:26
336
原创 【微信项目】LR参数化-关联--醍醐灌顶
这里我理解的是(我认为很重要):普通意义上的的参数化参数化的是Request的请求中的某个参数值,这个值我们可以人为赋予。关联就是一种特殊的参数化,是客户端发起Request请求后服务端返回的Response内容中的某个参数进行参数化,并把这个值作为下个Request的参数值;关联,我这边几乎每次都会出问题,之前总是纠结于:1、我到底怎么找到需要关联的参数。2、到底怎么关联,不外乎网上各种资料各种3大关联方法,但是这3中方法如果不是自己亲手操作过,用起来也是各种问题;3、总是纠结于如何解决关联的
2021-05-18 19:20:54
587
1
原创 LR脚本录制1——代理录制微信端APP脚本
1.1 StartRecording设置Program to record:选择LR安装路径bin目录下的 wplus_init_wsock.exeWorking diretory:Vuser引擎的工作路径一般写安装的bin目录路径,可采取下图方式获取1.2 StartRecording设置【Options】Target Server:填写IP或者域名(IP可以填写内网IP也可以填写外网IP,域名不需要填写http://)Port:填写部署应用程序的站点端口Traffic Forwardin
2021-05-13 16:55:40
784
原创 openssl cer文件转pem文件
在windows机器上安装openssl工具,如果已经安装Loadrunner工具,则可以直接使用。因为在Loadrunner的安装目录bin下,已经有openssl工具直接点击运行即可如果没装LR,在windows中,点击【开始】,在输入框输入【cmd】,回车后进入命令行窗口。3、先输入openssl再输入:x509 -inform der -in “C:\Users\Administrator\Desktop\my.cer” -out my.pem 如下图所示:4、在对应的路径下找到.
2021-05-12 10:49:44
2985
转载 我们为测试发声,你提交的代码质量真的太低了,一步一bug,产品质量如何保证
让你自测为啥每次提交上来的代码还那么多问题,难道开发完成剩下的就全部是测试的事?请看下文,我们为测试发声:https://blog.csdn.net/qq_41431406/article/details/100914477
2021-04-08 14:24:50
174
转载 Fiddler抓取https详细设置
声明:本文为转载文章,载请来源https://www.cnblogs.com/joshua317/p/8670923.html
2019-02-19 11:01:50
362
原创 Selenium2Library 导入报错问题,且运行报错:qcannot import name GLOBAL_VARIABLES
环境搭建初期,各种安装问题,解决了一天终于好了,也不知道啥原因,写出来供大家参考:首先,异常如下:运行case后界面报错 from robot.variables import GLOBAL_VARIABLES ImportError: cannot import name GLOBAL_VARIABLES解决:直接在D:\Program Files (x86)\Python\Lib...
2019-01-30 17:14:08
1426
原创 robotframework 执行报错 pybot.bat --argumentfile c:\users\admini~1\appdata\local\temp\RIDEwgzmsl.d\argfi
ride运行一个case报错了,如下图:解决:在***\python\Scripts目录下加一个pybot.bat 文件 内容为:@Echooffpython -m robot.run %*
2019-01-30 13:43:27
6781
3
原创 【小程序】对应的服务器 TLS 为 TLS 1.0 ,小程序要求的 TLS 版本必须大于等于 1.2
微信开发者工具调试微信小程序,预览的时候提示报异常提示:"对应的服务器 TLS 为 TLS 1.0 ,小程序要求的 TLS 版本必须大于等于 1.2"; 解决办法:在部署了SSL证书的服务器上执行下面注册升级文件,然后重启服务器; 文件下载路径: https://pan.baidu.com/s/1z-NqQlsCPVuUh7rBJPjthw...
2018-10-22 09:35:46
3337
2
原创 LoadRunner回放脚本报27776解决办法
最近录制了微信公众号商城的脚本,回放的时候,发现有报错,报错如下: Loadrunner默认发送是通过sockets(将http转换为sockets)发送的,而sockets默认SSL的版本为SSL2和SSL3。HTTPS协议录制的脚本以SSL3版本回放时会使sockets端口连接失败,会被服务器拒绝连接。 解决方法: 1、设置Run-time Setting 找到Internet P...
2018-08-17 15:21:18
3497
2
原创 【python 菜鸟入门】利用 Cookie/session 模拟登录中的用户插入数据
依然拿自己公司的网站做了简单的练习,利用 Cookie/session 模拟登录中的用户插入数据。 和上一篇的步骤操作一样,只不过请求多了个参数,Fidder获取了body,如下图: 代码如下: 最后发现Cookie、session的Post请求都能插入成功。 但是不太明白两者的区别,后面继续补过吧,做出来很重要,原理更加重要。...
2018-05-31 23:17:01
729
原创 【python 菜鸟入门】利用 Cookie 模拟登录的用户访问登陆后的某个页面
跟着悠悠大师自学python,从环境搭建到初次的get请求和post请求,最后悠悠大师做了一个登录博客园的例子,本来自己也想练习一下,但是由于我自己的博客园申请失败了,并且自己实在是一个初级菜鸟对于登录的一些参数不知道是什么意思(自己菜呗),就自己用公司的一个项目做了本次的代码练习,经过各种尝试自动化小Case成功了,特别高兴,废话不说了进入正题。首先,我们要直接访问某个安全性网站的页面一般情...
2018-05-29 23:34:17
3625
原创 关于解决LoadRunner中Controller里面Scenario菜单下的Rendezvous还是灰色,不能被选择
出现这个问题的原因是在录制脚本或自己编写脚本的时候,没有插入“集合点”(只有在对应的VU脚本中插入集合点之后,该按钮才能被选择)。解决办法有两种: 1、录制脚本过程中插入集合点,这样在录制完成后会自动在代码中插入集合点。 2、利用函数lr_rendezvous("xx"),手动在代码中插入集合点;集合点插入成功后,Remov
2015-06-02 11:23:42
4231
原创 LoadRunner12 录制web脚本Action.c为空解决办法
1、查看浏览器的局域网设置 设置→internet选项→连接→局域网设置→“去掉”自动检测设置选项前面的对号; 如果录制还为空,执行第二步:2、在录制脚本时弹出的对话框选择“Recording Options”选项→选择“Mapping and FIlering”→Capter level 下拉框选择“WInlnet level data”; 第二步
2015-04-27 16:32:21
13100
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人