使Junit可以测试多线程的插件:groboutils

来源:互联网 发布:linux修改文件内容 编辑:程序博客网 时间:2024/05/22 00:26
使Junit可以测试多线程的插件:groboutilsmaven依赖:<dependency><groupId>net.sourceforge.groboutils</groupId><artifactId>groboutils-core</artifactId><version>5</version><scope>test</scope></dependency>注:如果下载失败,则可以选择手动添加1)手动下载依赖的地址:https://oss.sonatype.org/content/repositories/opensymphony-releases/net/sourceforge/groboutils/groboutils-core/5/2)将下载的jar包放到: repository\net\sourceforge\groboutils\groboutils-core\5 举例:import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.test.context.ContextConfiguration;import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import net.sourceforge.groboutils.junit.v1.MultiThreadedTestRunner;import net.sourceforge.groboutils.junit.v1.TestRunnable;@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations = "classpath:spring-test.xml")public class JunitMultiThreadPluginDemo {@Testpublic void testThreadJunit() throws Throwable {   // 线程数组,模拟并发TestRunnable[] testThreadArray = new TestRunnable[10];  for(int i=0; i<testThreadArray.length; i++){  testThreadArray[i]=new MultiThreadTest();  }  // 执行多线程测试用例的RunnerMultiThreadedTestRunner mttr = new MultiThreadedTestRunner(testThreadArray);  // 并发执行mttr.runTestRunnables();  }  /** * TestRunnable:表示一个测试线程的抽象类,子类需要实现该类的runTest()方法,在该方法中实现自己的测试代码 */private class MultiThreadTest extends TestRunnable {@Overridepublic void runTest() throws Throwable { // 在runTest()方法中实现 Thread.run() 中的内容execute();}}public void execute() {// 业务逻辑System.out.println("在这里完成业务逻辑的相关代码。。");try {Thread.sleep(10000); // 模拟相关代码的执行} catch (InterruptedException e) {e.printStackTrace();}}}

阅读全文
0 0
原创粉丝点击