contiperf、junit、jmeter
ContiPerf
https://www.jianshu.com/p/bfdb17814b21
导包:org.databene#contiperf
核心类:ContiPerfRule;@PerfTest、@Required
使用
@RunWith(SpringRunner.class);标记类
@Rule public ContiPerfRule cpr=new ContiPerfRule();启用规则
@PerfTest;执行过程参数。线程数、执行次数、执行时间等。
@Required;执行结果限制。执行时间、每秒执行数等。
测试结果会自动生成html,位于target/contiperf-result。
Junit4
测试方法、测试类、测试集、测试运行器
https://blog.csdn.net/qq_34264849/article/details/88243278
https://blog.csdn.net/u013001763/article/details/80256704
常用注解
@Test;标记测试方法,属性:timeout、expected
@Ignore;忽略测试
@Before、@After;测试方法回调,每个测试方法都调用
@BeforeClass、@AfterClass;测试类回调,标记public static void mName(){}
@RunWith;测试运行器,默认JUnit4.class,其他:Parameterized、Suite、Theories等
@Parameters;标记参数生成方法,签名:public static Collection mName(){}
@SuiteClasses;测试集
断言、假设
Assert静态方法,断言判定
Assume静态方法,false时跳过本次测试
运行器
@RunWith引入运行器,,默认JUint4.class。
- Parameterized.class;参数化测试
- Suite.class;测试集测试
- Theories.class;理论测试
规则
https://blog.csdn.net/u013001763/article/details/80256892
扩展junit。
@Rule/@ClassRule;标记Rule类型public成员/静态变量。
常用Rule实现类:
- TemporaryFolder;创建临时文件
- ErrorCollector;错误收集,测试完后自动展示。catch收集。
- Verifier;自动结果校验。通过成员变量传递参数。
- TestName;获取测试方法名
- ContiPerfRule;contiperf测试。
官网:https://junit.org/junit4/
Jmeter
官网:https://www.hissummer.com/
易百:https://www.yiibai.com/jmeter
下载:http://jmeter.apache.org/download_jmeter.cgi
JMeter基于协议,支持HTTP,JDBC,LDAP,SOAP,JMS和FTP等。
概念
测试计划
基本测试单元,由测试元素构成;至少包含一个线程组。
测试计划、测试元素均可单独保存;测试元素可合并到其他测试计划。
右上角感叹号,查看日志。
测试元素
https://jmeter.apache.org/usermanual/component_reference.html
thread group,线程组;
controllers,控制器;请求,顺序控制。两类:sampler采样器,logic controller逻辑控制器,控制sampler。
listeners,监听器;分析服务器返回结果,提供图表展示。
timers,计时器;模拟延时、暂停。
Configuration elements,配置元素;修改采样器发送的请求。
Pre/Post Processor,前/后处理;采样器前后处理。
http镜像
返回发送的请求;测试请求参数是否正常。
JDBC
导入jar包到./lib;jar包名格式:mysql-connector-java-X.X.X-bin.jar
注意数据库连接池名必填;异常时看日志。
问题
jmeter乱码,修改./bin/jmeter.properties,sampleresult.default.encoding=UTF-8。
ip、port等,在对应位置填写占位符${},引用参数。值就近优先。
config参数引用,