junit 模拟多线程压力测试
在生产中经常会遇到关于压力测试的问题,如何在实际生产中测试程序所承受的压力,对于开发来说并不是一件容易的事,下面介绍junit 多线程测试。
直接上代码
package com.bypay.bingfa;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.params.HttpMethodParams;
import org.junit.Test;
import net.sourceforge.groboutils.junit.v1.MultiThreadedTestRunner;
import net.sourceforge.groboutils.junit.v1.TestRunnable;
public class BFRequestsTest {
@Test
public void BFRequestsTest() {
// 构造一个Runner
TestRunnable runner = new TestRunnable() {
@Override
public void runTest() throws Throwable {
// 测试内容
testRun();
}
};
int runnerCount = 1000; // Rnner数组,想当于并发多少个。
TestRunnable[] trs = new TestRunnable[runnerCount];
for (int i = 0; i < runnerCount; i++) {
trs[i] = runner;
}
// 用于执行多线程测试用例的Runner,将前面定义的单个Runner组成的数组传入
MultiThreadedTestRunner mttr = new MultiThreadedTestRunner(trs);
try {
// 开发并发执行数组里定义的内容
mttr.runTestRunnables();
} catch (Throwable e) {
e.printStackTrace();
}
}
public void testRun() {
try {
HttpClient client = new HttpClient();
PostMethod method = new PostMethod("http://58.246.136.11:8029/front/inlet!deal.ac");
String date = "{\"name\": \"wangjx\"}";
((PostMethod) method).addParameter("data", date);
HttpMethodParams param = method.getParams();
param.setContentCharset("UTF-8");
client.executeMethod(method);
// 打印服务器返回的状态
System.out.println("http 返回状态\n" + method.getStatusLine());
// 打印返回的信息
InputStream stream = method.getResponseBodyAsStream();
BufferedReader br = new BufferedReader(new InputStreamReader(stream, "UTF-8"));
StringBuffer buf = new StringBuffer();
String line;
while (null != (line = br.readLine())) {
buf.append(line).append("\n");
}
System.out.println("调用接口返回数据\n" + buf.toString());
// 释放连接
method.releaseConnection();
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
相关推荐
Unit是一个Java语言的单元...Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。
单元测试之道(Java):使用JUnit进行单元测试。单元测试是提高代码质量的有效手段,但大部分开发人员由于种种原因都不乐意进行单元测试。
Junit单元测试Junit单元测试Junit单元测试Junit单元测试
junit测试测试junit测试测试junit测试测试junit测试测试
JUNIT多线程测试
junit测试 test txt file
junit3 junit4 api,单元测试的利器
Junit单元测试Junit单元测试Junit单元测试Junit单元测试
Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。 JUnit是一个开发源代码的...
用Junit进行单元测试
简单的ATM的代码测试技术,基于Java的代码测试,里面实现了Server类和测试类,需要添加Junit和Elcmma
JUNIT软件测试软件测试技术JUnit和单元测试入门简介软件测试1、几个相关的概念白盒测试——把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人员是公开的。回归测试——软件或环境的修复或更正后...
junit参数化测试的使用方法,数据驱动:数组,excel
Junit参数化测试的使用方法博客 的源代码
通过单元测试工具(Junit)支持,使学生对单元测试中测试用例的设计原则,设计方法进行了解和掌握。
在Eclipse中使用JUnit4进行单元测试!
Junit单元测试指南 Junit单元测试指南 Junit单元测试指南 Junit单元测试指南 Junit单元测试指南 Junit单元测试指南
junit单元测试junit单元测试junit单元测试
Java单元测试JUnit需要用到的jar文件,内附文档说明链接,需要的可以下载和查看,需要积分为0。。
java web 开发中,利用Struts+Spring+Hibernate框架开发网页后的测试