性能测试培训day2
上节课
性能测试,多线程、协议、场景
实施:1,脚本开发 运行 排错(看回放,然后view-test_results,看业务)
参数化、关联、检查点、事务、思考时间、集合点
参数化:不做参数化的话,目的为了xx实现和模拟真实场景,难的是构造数据
一、web开头的函数只能web使用,不能其他协议使用
lr开头的是通用的函数
二、参数化做法:点右键--“replace with parameter”
如果迭代次数大于行数会出错的
是不太适合用参数化去做脚本注册的(读文件的方式),如果记事本有五行,后面一行为空,那么前五次成功,后面失败了
参数化的时候,每个三种,九种组合
取值方式 select next row:sequential顺序取值(顺序点名) random随机取值 unique 唯一(意思是更新的时候这个值不能再出现了)
更新方式 update value on:each iteration迭代更新(一天一换人,发生新的迭代才更新) each accurrence 执行时遇到参数就更新 once 第一次更新就不变了
when out of values:次数超范围,Abort Vuser终止用户报错No more unique values,
三、controler里面去的时候有100个用户取一份数据怎么取值??
可以用simulate parameter按钮去模拟
Number of Vusers用户数5个
Number of iterations to run:迭代6次
每个用户都顺序跑一次参数,不适合注册
做登录测试的时候,也不适合,因为都要跑一次都要登录,会重复
Allocate
Automatically自动分配,快的先上,不容易控制
Allocate手工控制,?values for each vuser 每个用户分配多少个值 适合Unique+Each iteration的方式(注册)
例如100000个账号用50个用户去跑,每个用户分配2000个账号
"Unique+Once"多用户登录的时候,每个用户之间取的值不一样,但是每个用户迭代的脚本每次用的值都一样
构造数据的时候,用户名密码不一样:select column 1/2 取的同一个文件的不同列
用户名"random + each iteration" 密码 same line as username
参数名
-----------------------------
username,password
abc1,123222
admin,admin
----------------------------
第二种方式:从正式环境数据库里面取用户名+密码,不用造数据了
要用第三方软件连接数据库: 数据库上要授权允许远程访问
grant all previliges on *.* to user1@'%' identified by "user25"; (*.* 数据库.所有对象,'@'是所有地址)
grant all privileges on *.* to 'root'@'%'; root用户无密码
datawizard--spacial SQL..--create--机器数据源
file format Column 两列数据的分隔符逗号或者星号。select username,username from pre_common_member
------------------------
选哪个模块 “..........fid={fid}” "random + each iteration"模式
---------------------跟踪,可以知道在哪个模块发帖
改运行时参数
extended log --Parameter substitution打钩
回放之后可以在replay log里面可以一目了然的看到
----------
注意:现在发帖还是在41下面发的
要把41右键replace all 要把所有的41替换成{fid}
--构造帖子的标题和内容,放入MySQL新库新表里面-
数据类型与 "desc pre_form_post;"一致
用datafactory构造数据到data.dat文件里
------随机发帖子-------帖子编号难以获取
如果想保存服务器返回的数据其中一部分怎么做????????
第一种:在返回的数据里面去查找(所有的票出了,在里面找要的)
第二种:先登记要什么数据,返回之后保存(先预定票,出票的时候自动)这种比较好,登记必须在请求之前去做,
对于那些文字要变的,记得位置不变,参照物不变。设参照物,可以找到多个,也可能没有,没有的时候要报错。
“登记”这个事怎么写???“登记”后只能从紧挨着的后面一个请求返回的数据里面去找。
web_reg_save_param 函数:把服务器端返回的数据按条件保存到指定的参数里面,类似的还有三个函数 web_reg_save_param_ex ,_regexp, _xpath,
insert --new step
web_reg_save_param("message",
"LB=second.html\">",
"RB=<",
LAST);
//里面的引号要转义
帖子里面的模块,可以把全部fid保存下来。需要设置 "Save Data to a Parameter" 选择 instance : All
(instance里面要嘛是数字要嘛是ALL)要嘛 把服务器端满足条件的全部保存,要嘛只取其中一个(假如服务器返回10个,写个3意思是返回第三个)
fids_1=2、fids_2=41、...、fids_count=6可以用函数随机: lr_save_string(lr_paramarr_random("fids"),"fid") 用的时候: fid={fid}
注意:尽量不要用int a =1 这样去定义。而是用参数:lr_save_string这种写法,int去定义要放在语句块(大括号的)最开始,有点麻烦。
并且参数的作用域是全局的,而变量的作用域是局部的
性能测试培训day2的更多相关文章
- 性能测试培训:帮你定位 Linux 性能问题的 18 个命令以及工具
性能测试培训:帮你定位 Linux 性能问题的 18 个命令以及工具 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在popte ...
- 性能测试培训:tomcat性能调优方法
性能测试培训:tomcat性能调优方法 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的loadrunner ...
- 性能测试培训:Ajax接口级性能测试之jmeter版
性能测试培训:Ajax接口级性能测试之jmeter版 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest认为工具 ...
- 性能测试培训: 监控CPU之python
性能测试培训: 监控CPU之python 作为一名测试开发工程师,开发脚本是为了测试服务的,我们在手里没有性能监控工具的情况下,我们会自己来进行开发脚本完成监控任务.下面是python监控cpu '' ...
- 性能测试培训:WebSocket协议的接口性能之Jmeter
性能测试培训:WebSocket协议的接口性能之Jmeter poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.poptest测试开 ...
- 性能测试培训:批量执行Jmeter脚本之ant调用
性能测试培训:批量执行Jmeter脚本之ant调用 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的load ...
- 性能测试培训:分布式测试之jmeter
性能测试培训:分布式测试之jmeter 在使用Jmeter进行性能测试时,如果并发数比较大(比如最近项目需要支持1000并发),单台电脑的配置(CPU和内存)可能无法支持,这时可以使用Jmeter ...
- 性能测试培训:定位jvm耗时函数
性能测试培训:定位jvm耗时函数 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:90882 ...
- 性能测试培训:sql server性能测试分析局部变量的性能影响
poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的loadrunner的培训中,为了提高学员性能优化的经验,加入了 ...
随机推荐
- ThinkPHP3.2.3学习笔记2---模型
一.模型实例化1.直接实例化可以和实例化其他类库一样实例化模型类,例如:$User = new \Home\Model\UserModel();$Info = new \Admin\Model\Inf ...
- bzoj 3675: [Apio2014]序列分割【斜率优化dp】
首先看这个得分方式,容易发现就相当于分k段,每段的值和两两乘起来. 这样就很容易列出dp方程:设f[i][j]为到j分成分成i段,转移是 \[ f[i][j]=max { f[k][j]+s[k]*( ...
- bzoj 4826: [Hnoi2017]影魔【单调栈+树状数组+扫描线】
参考:https://www.cnblogs.com/lcf-2000/p/6789680.html 这是一个相对码量少的做法,用到了区间修改区间查询的树状数组,详见:www.cnblogs.com/ ...
- windows 命令行下 切换目录
cd D:\ 没啥用,直接D:就可以切换了,D,D:\都不行
- PhpStorm Xdebug远程调试环境搭建原理分析及问题排查
2017年05月26日 经验心得 目录 一. 环境介绍 二. 远程环境配置 2.2 Xdebug安装 2.3 配置 三. 本地phpstorm配置 3.1 下载远程代码 3.2 添加php解释器 ...
- Spring @requestBody
页面提交请求参数有两种,一种是form格式,一种是json格式 jQuery的$.post方法虽然也可以传递json格式数据,但实际上是用的form格式提交,jquery会帮你把json转成form格 ...
- [POI2001]Gra绿色游戏
Description 绿色游戏是一种两人游戏,双方分别称Ann和Billy.游戏的内容主要是轮流在棋盘上移动一颗棋子.棋盘上的点一部分是绿色的,其余是白色的:全部从1至a+b编号.编号1至a的点属于 ...
- [Usaco2006 Mar]Mooo 奶牛的歌声
Description Farmer John's N (1 <= N <= 50,000) cows are standing in a very straight row and mo ...
- 【洛谷4769】[NOI2018] 冒泡排序(动态规划_组合数学)
题目: 洛谷 4769 博客页面左下角的嘴嘴瓜封神之战中的题目 分析: 一个排列交换次数为 \(\frac{1}{2}\sum_{i=1}^{n}|i-p_i|\) 的充要条件是这个排列不存在长度为 ...
- 413 Arithmetic Slices 等差数列划分
如果一个数列至少有三个元素,并且任意两个相邻元素之差相同,则称该数列为等差数列.例如,以下数列为等差数列:1, 3, 5, 7, 97, 7, 7, 73, -1, -5, -9以下数列不是等差数列. ...