我正在使用ExecutorService来运行并行的junit测试。每个测试使用随机数生成器来标识自身并独立于其他测试运行。我的情况就像这样
我知道我可以使用公共静态变量来保存和恢复test1中的数据。关于这样做的任何想法都很整齐。不想在工作的第一天给人留下不好的印象。
以下示例代码
public class TestCases {
static ExecutorService exe ;
public static void main(String[] args) throws Throwable {
test1() ;
test2() ;
test3() ;
}
public static void test1() {
exe = Executors.newCachedThreadPool() ;
for (int i = 0 ; i < 10 ; i++) {
Test1 test1 = new Test1() ;
exe.execute(test1) ;
}
exe.shutdown() ;
while(!exe.isShutDown()) {
}
}
//same for test2 and test3
}
答案 0 :(得分:1)
执行此操作的一种方法是将Test1和Test2合并为Test3的子集。事实上,所有这些可以是Test4。这样您将只测试一个特定场景。我建议您考虑创建基于场景的测试。