MyBatis-测试方法封装
Junit5中提供了一些针对测试方法的注解
@BeforeEach
在每一个测试方法之前都要执行的方法
@AfterEach
在每一个测试方法之后都要执行的方法
Mybatis测试改写
我们将读取文件创建流 -> sqlSessionFactory -> sqlSession -> mapper 这一系列步骤进行封装
sqlSession是每次运行测试都要开启和关闭的,
所以将sqlSession的创建和mapper的创建写进@BeforeEach中
将sqlSession资源的关闭写进@AfterEach中
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| package com.xiaobai.test;
import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test;
import java.io.IOException; import java.io.InputStream;
public class MyBatisTest { InputStream is; SqlSession sqlSession; UserMapper mapper;
{ try { is = Resources.getResourceAsStream("mybatis-config.xml"); } catch (IOException e) { throw new RuntimeException(e); } }
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
@BeforeEach public void setUp() throws Exception { sqlSession = sqlSessionFactory.openSession(); }
@AfterEach public void tearDown() throws Exception { sqlSession.close(); } ………… }
|