在Junit测试中,有@BeforeClass、@AfterClass、@Before和@After几个注解,查了一下相关的资料了解到它们在测试中运行的先后顺序依次是:
@BeforeClass->@Before->@After->@AfterClass
这个随便百度一下就可以搜到,这里主要是看看这个标签里面能不能用于数据库的初始化工作;
Case1:执行先后顺序
@Before public void init(){ System.out.println("init---------------------"); } @Test public void findPharmacistByOrgIdWith0Result() throws Exception {结果如下:System.out.println("test---------------------");}@Afterpublic void finalThing(){ System.out.println("final---------------------");}
Case2:在@Before上面初始化数据库
结果是找不到数据库:
所以得出结论:Junit测试的数据库初始化不能在@Before中进行
但是可以通过代码的方式来为测试初始化数据环境
@BeforeClass和@AfterClass在Junit中都是以静态函数的形式出现,主要用于全局的初始化和清理。只执行一次;