你是否有喝咖啡等待JUnit结果的经历?

zhanghuangzhu 发表于 2007-05-28 01:31:47
作者:张黄瞩     来源:原创
评论数:6 点击数:1,710     投票总得分:3 投票总人次:1
关键字:p-unit

摘要:

你是否有喝咖啡等待JUnit结果的经历? 你是否抱怨过机器运行速度太慢或是单元测试suite太庞大? 甚至升级机器也无济于事? 因为他们被单线程执行着!
至少我有过,不仅仅是喝咖啡,甚至是吃中饭,睡午觉,等待JUnit运行结果,以前总是抱怨机器太慢,现在,似乎情况有些变化,看下面的一个例子,有2个测试案例类[1],每个类4个方法,每个方法休息5秒钟,那么做一个简单的算术题,需要多长时间?

2*4*5=40秒,完全正确,你可以去倒一杯水,然后回来看结果了!
我机器上JUnit的运行结果为:
Run as -> JUnit - 40268ms

会有其他不同结果吗?p-unit给你答案,下面这段代码是运行p-unit的main函数:
public static void main(String[] args) {
  SoloRunner runner = new SoloRunner();
  runner.setExecutorPool(new ExecutorPoolImpl(2));
  runner.run(LongTimeExecutionPUnitTestSuite.class);
}


答案是什么?
[solo] Started running samples.LongTimeExecutionPUnitTestSuite
TestSuite: samples.LongTimeExecutionPUnitTestSuite
samples.LongTimeExecutionTest1
samples.LongTimeExecutionTest2
test1() - [5021.0ms]
test1() - [5021.0ms]
test2() - [5003.0ms]
test2() - [5022.0ms]
testA() - [5020.0ms]
testA() - [5000.0ms]
testB() - [5001.0ms]
testB() - [5033.0ms]
total: 8, failures:0 (GREEN) - 20360.0ms


每个方法还是休息了5秒钟, 结果是20秒,不是40秒。

下载 p-unit-0.10 0.10 release: https://sourceforge.net/project/showfiles.php?group_id=195736&package_id=232587&release_id=509772

p-unit 主页: http://p-unit.sourceforge.net

[1] 测试案例类
LongTimeExecutionTest1.java/LongTimeExecution2.java:
public class LongTimeExecutionTest1(2) extends TestCase {
public void test1() throws Exception {
Thread.sleep(5000);
}

public void test2() throws Exception {
Thread.sleep(5000);
}

public void testA() throws Exception {
Thread.sleep(5000);
}

public void testB() throws Exception {
Thread.sleep(5000);
}

}


更多p-unit消息: http://blog.csdn.net/zhanghuangzhu

本页页面地址:

投票评分(记入本贴作者的专家分)

     非常好 还行 一般 扔鸡蛋          投票总得分: / 投票总人次:

用户评论列表

#1 评论作者: diggywang 发表时间: 2007-05-31 08:40 上午

习惯了......就像很多人用了Eclipse不大会接触Netbeans,用惯了Netbeans不会再去用Eclipse一样

#2 评论作者: sytemper 发表时间: 2007-06-05 09:37 上午

这只是一小方面,不能说明什么问题

#3 评论作者: kucap1 发表时间: 2007-08-07 03:39 下午

恩!楼上的说的很对啊!顶了……

#4 评论作者: dy315 发表时间: 2007-08-15 12:58 上午

操.... 又是从IBM开发者社区抄来的

#5 评论作者: fkpwolf 发表时间: 2007-08-15 09:38 下午

多起几个junit实例不就可以了。。。

#6 评论作者: jollyking 发表时间: 2007-08-30 02:31 下午

同意一楼的说法.
对于大家都在使用的、而且自己也已经习惯了的做法,只要还能忍受,一般就懒得去改变了。


发表我的评论 (评论可增加个人积分...)

用户*: E-mail:
评论内容*:

支持BBCode
算术题*: + =