我通过几个测试来设置一个类,而不是使用一个@Before我想拥有一个在所有测试之前仅执行一次的设置方法的类。Junit 4.8有可能吗?
@Before
尽管我同意@assylias的观点,即使用@BeforeClass是经典的解决方案,但并不总是很方便。带有注释的方法@BeforeClass必须是静态的。对于某些需要测试用例实例的测试而言,这非常不便。例如,基于Spring的测试可用于@Autowired在Spring上下文中定义的服务。
@BeforeClass
@Autowired
在这种情况下,我个人使用setUp()带有@Before注释的常规方法并管理我的自定义static(!) boolean标志:
setUp()
static
boolean
private static boolean setUpIsDone = false; ..... @Before public void setUp() { if (setUpIsDone) { return; } // do the setup setUpIsDone = true; }