05-使用Junit进行测试
Posted 美好的明天
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了05-使用Junit进行测试相关的知识,希望对你有一定的参考价值。
用到的注解:
@Test:测试方法
@Before:初始化方法。
@After:是否资源。
先执行Befere,然后执行Test,最后执行After。
第一步:新建一个Junit目录。
第二步:取名
该目录下新建一个类:
代码如下:
import org.junit.After; import org.junit.Before; import org.junit.Test; //测试类 public class StudentsTest { @Before public void init() { } @After public void destory() { } @Test public void testSaveStudents() { } }
通过hibernate API编写访问数据库的代码
Before初始化需要执行以下操作:
Configuration config=new Configuration().configure();//创建配置对象
ServiceRegistry serviceRegistry=new ServiceRegistryBuilder().
applySettions(config.getProperties() ).buildServiceRegistry();//创建服务注册对象。
sessionFactory=config.buildSessionFactory(serviceRegistry);//创建会话工厂对象。
session=sessionFactory.openSession();//打开会话
transaction=session.beginTransaction();//打开事务
在Test类里面如下写:
import java.util.Date; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.boot.registry.StandardServiceRegistryBuilder; import org.hibernate.cfg.Configuration; import org.hibernate.service.ServiceRegistry; import org.junit.After; import org.junit.Before; import org.junit.Test; //测试类 public class StudentsTest { private SessionFactory sessionFactory; private Session session; private Transaction transaction; @Before public void init() { //创建配置对象 Configuration config=new Configuration().configure(); config.addClass(Students.class);//这个需要加上(视频里面没有) //创建服务注册对象。 ServiceRegistry serviceRegistry=new StandardServiceRegistryBuilder() .applySettings(config.getProperties()).build(); //通过config.getProperties()读取配置文档。 //创建会话工厂对象 sessionFactory=config.buildSessionFactory(serviceRegistry); //创建会话对象 session=sessionFactory.openSession(); //开启事务 transaction=session.beginTransaction(); } @After public void destory() { transaction.commit();//提交事务 session.close();//关闭会话 sessionFactory.close();//关闭会话工厂 } @Test public void testSaveStudents() { //生成学生对象 Students s=new Students(1,"张三丰","男",new Date(),"武当山"); session.save(s);//保存对象进入数据库 } }
在里面,通过session对象自带的save执行保存方法。
之前调试的时候一堆错误,最后发现主要是以下问题:
1,缺少这句话,后期加上了:config.addClass(Students.class);/
2,hbm.xml文件默认不在src下,手动加到下面,与cfg.xml一个目录,否则: <mapping resource="Students.hbm.xml"/>就需要加入包名。
3,数据库配置重新弄了一下:
<property name="connection.url">jdbc:mysql://localhost:3306/sys</property>
以上是关于05-使用Junit进行测试的主要内容,如果未能解决你的问题,请参考以下文章
使用 spring-data-jpa 和 MockMvc 进行 spring boot junit 测试