pom.xml加入. Y5 i/ M3 N' ~5 @
# v. L5 f Z2 y, m2 W
<dependency> <groupId >net.sourceforge.groboutils </groupId > <artifactId >groboutils-core</ artifactId> <version >5 </version > <scope >system </scope > <!--本地jar的路径,相对或者绝对都可以 --> <systemPath >D:\ groboutils-core-5.jar</systemPath > </dependency > N8 T1 H+ O& r$ V" f6 q
@Test
9 E- p* }- ~& z/ w; {. U; F$ M- ]0 X* Z% R public void MultiRequestsTest() {
, {0 M: D A# H // 构造一个Runner
% n' u1 E& O2 p: p. i% B TestRunnable runner = new TestRunnable() {5 b) Q, Q* V( B9 g1 m3 v. {
@Override; V5 Y9 ^* ~9 N2 B7 Q2 @
public void runTest() throws Throwable {
" I$ S) T) ^! U1 X/ ] // 测试内容* y* r5 b" Z! }! Z5 |
t$ t) r5 {% d! T$ m
: y" Z- j0 y& U' G
}- R3 d/ ]3 H5 |% H1 S+ ?
};/ i. C5 l9 V/ e6 K2 A
int runnerCount = 1000;, E F% K5 @( B6 B" \
// Rnner数组,想当于并发多少个。1 t- w+ Y: V1 f6 M
TestRunnable[] trs = new TestRunnable6 z7 a* B, g2 @! ?8 }$ R
" X. l \9 j( ~6 I
[runnerCount];& p) I# ]/ f6 ^- O7 A1 W( J
for (int i = 0; i < runnerCount; i++) {
# I- l* t* J. _6 F' b! e; |' @ trs = runner;/ q% v' D# S$ f- [$ t5 D
}
0 k5 b8 ?3 V2 `2 ]1 X // 用于执行多线程测试用例的Runner,将前面定义的
8 F6 I% |7 ?0 j
) v1 W% m5 p9 I单个Runner组成的数组传入7 D1 [* X6 N1 _0 y
MultiThreadedTestRunner mttr = new. t+ U }+ Z X, x0 O+ w; c
+ F1 B- n* N+ k) [
MultiThreadedTestRunner(trs);
8 C4 J# G/ |! L try { ]& ^6 K" Y8 [- v) T
// 开发并发执行数组里定义的内容
% _% G; n! o6 f# m- }- W% w" ^5 b mttr.runTestRunnables();
. m9 J0 T0 b0 L3 H3 L% C. F" J } catch (Throwable e) {% I8 \+ x1 Z: A1 G
e.printStackTrace();" A" V+ U. L+ q/ Y# m t4 b
}5 @) l5 O& p4 x- Y( K8 t7 j2 Z* t0 A
}
" {( h" {( H* W0 A( z0 U2 K# _' ~- p. [* j
groboutils-core-5.jar百度网盘下载地址:java自学网(javazx.com)groboutils-core-5.jar.zip【密码回帖可见】- R3 ^0 S+ L2 ~/ k9 i* J
- Y+ @7 n, m! t) k
* \% Y1 H( x! t0 w. [# R% I
) q. N# S( r* D8 d3 ^: F' `
$ T: v8 E6 U+ N: w L' ^8 i) j: ~5 D |