MyBatis-测试方法封装
MyBatis-测试方法封装
Junit5中提供了一些针对测试方法的注解
@BeforeEach
在每一个测试方法之前都要执行的方法
@AfterEach
在每一个测试方法之后都要执行的方法
Mybatis测试改写
我们将读取文件创建流 -> sqlSessionFactory -> sqlSession -> mapper 这一系列步骤进行封装
sqlSession是每次运行测试都要开启和关闭的,
所以将sqlSession的创建和mapper的创建写进@BeforeEach中
将sqlSession资源的关闭写进@AfterEach中
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();
}
…………
}