junit单元测试 jmeter压力测试 ab性能测试

2016-12-01 22:51:00
admin
原创 2341
摘要:junit单元测试 jmeter压力测试 ab性能测试

一、junit单元测试

1、junit5开始改名叫jupiter,单元测试需要引入组件junit-jupiter,兼容旧版单元测试需要引入junit-vintage-engine;

2、单元测试注解:@Test标识测试方法,@BeforeAll在所有测试之前执行一次,@AfterAll在所有测试之后执行一次;


二、jmeter压力测试

参数说明:

Ramp-Up Period(in seconds),多少秒内线程全部启动,避免启动线程负载过高,0表示立即全部启动;

-n, --nongui,无图形界面模式;

-p, --propfile <argument>,配置文件;
-t, --testfile <argument>,测试文件;
-l, --logfile <argument>,日志文件;


创建压测步骤:
1、创建线程组;

2、添加配置元件,比如用户定义的变量,用于参数化压力测试;

3、新建HTTP请求,HTTP请求可以添加配置原件和响应断言等;

4、添加监听器,View Results Tree,用于查看所有请求结果,图形界面比较消耗CPU,不推荐使用;
5、添加监听器,Summary Report,用于查看吞吐量和平均耗时,图形界面消耗少量CPU,推荐使用;


变量使用:
1、用户定义的变量用来改变压测配置,变量通常使用内置函数生成;

2、可用函数列表:http://jmeter.apache.org/usermanual/functions.html

3、常用函数:__P读取属性,示例${__P(thread, 1)}、${__P(loop, 2000)}


动态变量:

1、JSR223 PreProcessor用来生成动态变量,其中groovy脚本最常用,因为写起来比较简单,并且性能最高

2、JSR223是Java虚拟机的脚本规范,GET和POST请求都可以使用动态变量,用来压测需要计算参数的接口;


命令示例:

1、示例配置:TestPlan.jmx

2、jmeter/bin/jmeter -n -t TestPlan.jmx -Jserver_ip=127.0.0.1 -Jthread=2 -Jloop=5000


自定义客户端:

1、实现抽象类AbstractJavaSamplerClient,然后实现方法getDefaultParameters、setupTest、runTest、teardownTest;

2、SamplerClient每个线程创建一个,getDefaultParameters调用次数不确定;

3、setupTest和teardownTest每个线程调用一次,runTest每个请求调用一次;


三、ab性能测试

1、ab工具是apache的性能测试工具,apache的安装包自带ab工具;

2、ab工具只会发送请求,并不处理返回,jmeter发送请求并处理返回;

3、使用示例:ab -c 1 -n 1000 url

发表评论
评论通过审核之后才会显示。