junit4.7
一、引入jar包
好的习惯,建立自己的user library
junit-4.7.jar
建议:
1.学习maven的做法,将测试代码放在test目录下
----new source folder
src放的是开发性的代码
2.对哪个类进行测试,就对哪个包下面建一个TeacherTest类
当然可以用myeclipse直接进行建立junit test case
要加@Test注解
二、进行生成测试类
TeacherTest.java
将代码修饰一下
(每次测试都要建立一次SessionFactory,很费时
----处理方式:
单例/static语句块
辅助的语句块放在static
另一个方法:
(hibernate建议的做法是)启动和辅助类
)
三、@BeforeClass在对象初始化之前,class load内存之后之后执行的方法
单元测试现在写的不够好
使用assert,就不用在数据库中手动查看
需要spring和hibernate结合。
补充知识:
注解:
写给编译器看的javac
运行环境看的java.exe运行的时候帮你做些事情。
代码案例:
package com.zhuhw.hibernate.model; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.AnnotationConfiguration; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; public class TeacherTest { /*这个类TeacherTest一进来就被初始化了,在测试方法执行用已经初始化好的SessionFactory; * 只初始化一次*/ public static SessionFactory sf = null; @BeforeClass public static void beforeClass(){ sf = new AnnotationConfiguration().configure().buildSessionFactory(); } @Test public void TestTeacherSave(){ Teacher t = new Teacher(); t.setId(6); t.setName("zhuhw2"); t.setTitle("ccc2"); //因为使用的annotation,所以Configuration要使用AnnotationConfiguration /*Configuration cf = new AnnotationConfiguration(); SessionFactory sf = cf.configure().buildSessionFactory();*/ Session session = sf.openSession(); //在hibernate中执行操作要在一个事务里面 session.beginTransaction(); session.save(t); session.getTransaction().commit(); session.close(); sf.close(); } @AfterClass public static void afterClass(){ sf.close(); } }
由于一直是配置错误,原因是自己改了Teacher类的位置,增加了com.zhuhw.hibernate.model中的model,作用一直运行不成功
最后通过,原来的/hibernate_0100_HelloWorld/src/com/zhuhw/hibernate/model/TeacherOldTest.java中的报错信息进行解决了。
使用junit进行单元测试成功执行。
四、注意点
/hibernate_0100_HelloWorld/src/hibernate.cfg.xml
这个文件配置写错了,junit会有时出现把bug给吞了
解决办法:
在
sf = new AnnotationConfiguration().configure().buildSessionFactory();
加上try{} catch()
错误信息就会提示出来了。
代码案例:
package com.zhuhw.hibernate.model; import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.AnnotationConfiguration; import org.hibernate.cfg.Configuration; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; public class TeacherTest { /*这个类TeacherTest一进来就被初始化了,在测试方法执行用已经初始化好的SessionFactory; * 只初始化一次*/ public static SessionFactory sf = null; @BeforeClass public static void beforeClass(){ /*关于junit会出现吞掉bug,1.可以在下面的语句上加上try catch * 2.或者加个main()方法,在main里面进行调用 beforeClass()*/ sf = new AnnotationConfiguration().configure().buildSessionFactory(); } @Test public void TestTeacherSave(){ Teacher t = new Teacher(); t.setId(11); t.setName("zhuhw7"); t.setTitle("ccc7"); //因为使用的annotation,所以Configuration要使用AnnotationConfiguration /*Configuration cf = new AnnotationConfiguration(); SessionFactory sf = cf.configure().buildSessionFactory();*/ Session session = sf.openSession(); //在hibernate中执行操作要在一个事务里面 session.beginTransaction(); session.save(t); session.getTransaction().commit(); session.close(); } /*关于junit会出现吞掉bug,1.可以在下面的语句上加上try catch * 2.或者加个main()方法,在main里面进行调用 beforeClass()*/ public void main() { beforeClass(); } @AfterClass public static void afterClass(){ sf.close(); } }
相关推荐
搭建注解环境jar包:3个 log4j日志jar包:2个 在Hibernate框架环境下先移除slf4j-nop-1.5.8.jar,然后加入 加入配置文件:一个。放在src文件夹下。 Junit测试配置jar包:1个。在根目录下建立Source Folder存放测试...
SingleJDBCBase 是基于Spring Framework基础上搭建的一个Java基础开发套件,以Spring MVC为模型视图控制器,JDBC为数据访问层。 * 核心框架:Spring Framework 4.2.7 * 安全框架: * 视图框架:Spring MVC 4.2.7 * ...
(1)这是一个基础的java web项目,完成了应用骨架的搭建,提供了底层框架的支持,但里面的内容是空白的,可以在此基础上进行项目开发或用来学习。 (2)运行环境为:maven3.2 + jdk1.8 + tomcat8 + mysql5。 (3)mysql...
五、 搭建Junit环境 16 六、 ehibernate.cfg.xml : show_sql 17 七、 hibernate.cfg.xml :format_sql 17 八、 表名和类名不同,对表名进行配置 17 九、 字段名和属性相同 17 十、 字段名和属性名不同 17 十一、 不...
SingleMyBatis 是基于Spring Framework基础上搭建的一个Java基础开发套件,以Spring MVC为模型视图控制器,MyBatis为数据访问层。 * 核心框架:Spring Framework 4.2.7 * 安全框架: * 视图框架:Spring MVC 4.2.7 *...
SingleHibernate 是基于Spring Framework基础上搭建的一个Java基础开发套件,以Spring MVC为模型视图控制器,Hibernate为数据访问层。 * 核心框架:Spring Framework 4.2.7 * 安全框架: * 视图框架:Spring MVC ...
│ 北京动力节点SSH前言-008-代理模式-静态代理测试环境的搭建.mp4 │ 北京动力节点SSH前言-009-代理模式-解决快捷键冲突问题.mp4 │ 北京动力节点SSH前言-010-代理模式-静态代理的实现.mp4 │ 北京动力节点SSH前言-...
Windows10下搭建eclipse开发hadoop的开发环境 其中的第一至四步骤。 1.2、请参考文章: maven的安装、路径配置、修改库文件路径和eclipse中的配置,解决Eclipse使用Maven下载慢的问题 1.3、创建一个maven工程HDFS ...
搭建这个完全是因为之前某个团队就要这么做而搭建,然后实际API自动化测试中,非常不建议通过(Cucucmber)这种方式来实现。完全可以用rest assured + TestNG/JUnit 完成你需要的API自动化测试 cucumber_restassured ...
本资源使用 Elasticsearch结合spring data,mybatis plus,logback日志等流行框架搭建自己的全文搜索引擎,大家跟着做就能学会其中的操作方式(Java api封装方法和spring data封装的操作方法)。 注:可以结合博主...
文档说明:可能会包含README.md或其他文档文件,对项目的使用方法、功能特性、开发环境要求等进行详细说明。第三方库:项目可能会依赖一些第三方库,如数据库驱动、安全框架、日志组件等,这些库通常通过Maven或...
上面的 N 步和下面的2步形成巨大的反差,这仅仅只是在开发环境搭建的这个方面。 Spring Boot 使测试变得更简单 Spring Boot 对测试的支持不可谓不强大,Spring Boot 内置了7种强大的测试框架: JUnit: 一个 Java ...
MAVEN搭建JAVA-WEB项目 Spring的配置文件 Junit单元测试 Spring整合JSON输出 Spring整合Mybatis不需要写DAO层代码 Log4j控制输出,主要介绍扩展方式写日志进数据库的方式 代码注释的规范,和一些MyEclipse的规范操作...
主要是介绍了什么是框架,介绍mybatis,演示从0到搭建一个实现插入功能的mybatis demo,同时包含test测试以及日志。 2. 多个mapper文件时,如果id相同则使用namespace加以区分,否则会报错。 3. 改进成使用util单例...