使用junit进行多线程并发测试

没使用过junit的,请看上篇博客。
这篇讲一下如何使用junit进行多线程并发测试 ~
实际上junit是不支持多线程的,你可以试试,在test方法里面new个 Thread ~ 会报错 ~
那你会问我在这还扯什么犊子 ~
我当然不是在这扯犊子了
~~
有插件 ~~ 对,有插件!

<!-- 包依赖 -->
 <dependency>
     <groupId>junit</groupId>
     <artifactId>junit</artifactId>
     <version>${junit.verion}</version>
     <scope>test</scope>
     <optional>true</optional>
 </dependency>
 <!-- junit 多线程测试 -->
 <dependency>
     <groupId>fakepath</groupId>
     <artifactId>groboutils-core</artifactId>
     <version>5</version>
     <scope>test</scope>
 </dependency>

在junit基础上多引入一个包,这个包可以下载不下来,别着急,待会我上传一个 ~ 放到本地仓库就好了 ~ 下载链接
使用方法也是非常之简单:

 @Test
    public void MultiRequestsTest() {
        // 构造一个Runner
        TestRunnable runner = new TestRunnable() {
            @Override
            public void runTest() throws Throwable {

                //你的测试内容
            }
        };
        int runnerCount = 30;
        //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();
        }
    }

好了,大功告成!


版权声明:本文为u011250851原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。