最近在学习jmeter,有一意见惊喜的事情是:原来我一直学习的Jmeter博文的博主就是他老大写的,哈哈,世界真的很小啊。
目前学习Jmeter主要要从工作上入手,加上一点点额外的目标
1、基础:
Jmeter怎么做一个最简单的接口测试:当然是【添加线程组】->【添加Http请求】->【添加结果树】->【添加监视器】了。
这几步做完,然后在Http请求中输入请求的URI和参数值就行了。
2、稍微懂点儿
会基本的接口请求就够了吗?当然还不行,遇到要循环请求的怎么办,如果要条件判断的怎么办,遇到要随机数值的怎么办,遇到有COOKIES的怎么办?
所以,Jmeter的制作人早就想好了,在逻辑控制器里面,可以添加相应的IF控制器、迭代控制器、循环控制器、事物控制器、随机控制器等等很多实用的控制器,但是怎么用呢?
就是先添加控制器,比如先添加【IF控制器】,然后在【IF控制器】下面添加相关的Action即可。IF条件就在IF控制器的条件一列上注明就可以了。很好用
但是这些还不够,还达不到自动化测试的要求,咱们怎么说也要能够参数化吧?
Jmeter也可以参数化,有3种形式:
1、用户自定义的变量
2、CSV文件
3、JDBC数据库
引用CSV文件有两种方式,第一种是添加CSV的配置元件,在元件中注明相关的参数,然后在Action中写入CSV配置元件中的参数名即可
第二种是利用CSV的__Read函数,生成参数化的实例,然后将值写入对应参数的value属性就可以了
用户自动以变量那就更简单了,先添加【用户定义的变量】然后在变量里面声明相应的变量,然后在参数中引用就O了
有点儿复杂的是JDBC数据库,不过流程也差不多,先添加【JDBC连接配置元件】然后在该元件中填写相关的配置信息:地址、驱动名称、用户名、密码;然后就添加一个JDBC请求,在请求中可以实现传递要查询的值,甚至参数化;如果我们要使用数据库的查询结果,那么可以读取生成的报告文件,按照相应的格式分离出想要的参数最后引用。报告文件就在配置的文件夹内,如果没有配置?额,应该是没有吧,应该是放在缓存里面了,具体怎么找还不知道。可能要分系统(windows和linux?)
好了,如果会了这些,再加上一点点代码基础,就勉强可以用Jmeter了,但是实际中项目的应用还有一个最大的问题:报告。
报告分为给自己看和别人看两种。自己看当然是能看到的信息越多越好,别人看的当然是简洁易懂就好。所以怎么出报告,也是学习Jmeter需要掌握得
怎么出报告呢?
1、使用Jmeter自带的:
2、在Jmeter自带的报告的基础上,优化报告
3、完全写一个报告出来,让jmeter调用
目前本菜鸟处于第二个阶段,仅仅能根据Jmeter出的报告,稍微做个小修改。要达到第三级的深度,还需要足够的时间了解Jmeter的原理吧。。
目前我想对百度做接口测试,但是不知道怎么获取要传入参数,这个难到我了。有网文说可以使用firefox的Httpfox来监控网络请求,分析其中的过程,得出参数;但是,我这边的长城宽带根本就打不开啊。。看来还得明天去公司弄了,先试试WIRESHARK能不能抓到包吧。。