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

来源:互联网 发布:手机有网络不能看视频 编辑:程序博客网 时间:2024/06/07 07:50

没使用过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();        }    }

好了,大功告成!

原创粉丝点击