用TestSuite 在一个TestCase中的每一个方法执行前调用另一个TestCase的所有方法

为什么会有这样的需求呢?

在测试hibernate的级联配置是否正确的时候,需要两个TestCase

一个测试类TestAdd,测试所有add方法(含级联保存),另一个测试类TestDelete测试delete方法

 

在TestDelete的每一个delete方法前都需要现把所有数据添加进去,就需要调用TestAdd所有add方法

 

以前的做法是把add的过程全部copy到TestAdd的setUp方法中,但是这样做很繁琐,而且丑陋

 

说了那么多废话,贴出代码

 

在TestDelete中重写其setUp方法,加入以下代码

@Override
	protected void setUp() throws Exception {
		TestSuite testSuite = new TestSuite();
		testSuite.addTestSuite(TestAdd.class);//加入需要执行的TestCase
		testSuite.run(createResult());//createResult()为Junit TestCase类自有方法
		super.setUp();
	}
 

你可能感兴趣的:(Hibernate,JUnit)