课程咨询 :0571-56020834 QQ:3163902815

杭州软件测试培训

杭州软件测试培训 > 达内新闻 > 达内:封装单元测试的重复代码
  • 达内:封装单元测试的重复代码

    发布:杭州软件测试培训      来源:51测试网      时间:2016-07-01


  •   杭州达内软件测试培训专家分享一下封装单元测试的重复代码。

      单元测试开头代码:


    private Session session;
    private Transaction transaction;
    @Before
    public void init(){
    session = getSession();
    transaction = session.beginTransaction();
    }

    @After
    public void destroy(){ 
    transaction.commit(); 
    session.close();
    }


      把它封装一下,做了一个父类:BaseTest,让所有需要上面代码的单元测试都及继承这个父类,具体内容如下:


    class BaseTest { 
    static Session session;
    private static Transaction transaction;
    @Before
    public void init() {
    session = getSession();
    transaction = session.beginTransaction();
    System.out.println("[时间]"+new Date()+"    session创建成功!事务已开启!");
         }
    @After
    public void destroy() {
    transaction.commit();
    session.close();
    System.out.println("[时间]"+new Date()+"    事务已提交!session已销毁!");
    }
    }


      然后子类就可以这么写:


    public class QueryByCriteria extends BaseTest {
    @Test
    public void QueryTest(){
    Criteria criteria = session.createCriteria(ClassRoom.class);
    List<ClassRoom> list = criteria.list();
    list.stream()
    .forEach(item->System.out.println(item.getClassName()));
    }
    }


      最后附上HibernateUtil: 


    public class HibernateUtil {
    private static final SessionFactory sessionFactory = buildSessionFactory();
    private static SessionFactory buildSessionFactory() {
    try {
    Configuration configuration = new Configuration();
    configuration.configure("Hibernate.cfg.xml");
    //        在下面添加映射,不要写在配置文件中
    configuration.addAnnotatedClass(ClassRoom.class);
    StandardServiceRegistryBuilder ssrb = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties());
    return configuration.buildSessionFactory(ssrb.build());
    }
    catch (Throwable ex) {
    System.err.println("Initial SessionFactory creation failed !" + ex); 
    throw new ExceptionInInitializerError(ex);
    }
    }
    public static SessionFactory getSessionFactory() {
    return sessionFactory;
    }
    public static Session getSession() throws HibernateException {
    return sessionFactory.openSession();
    }
    }



    推荐文章

上一篇:达内:移动端的功能测试范畴

下一篇:达内:简介WEB的URL安全测试

最新开班日期  |  更多

国际软件测试工程师精品班

国际软件测试工程师精品班

开班日期:每月底

国际软件测试工程师提升班

国际软件测试工程师提升班

开班日期:每月底

国际软件测试工程师就业班

国际软件测试工程师就业班

开班日期:每月底

国际软件测试工程师就业班

国际软件测试工程师就业班

开班日期:每月底

  • 地址:杭州市西湖区文三路199号创业大厦4楼
  • 课程培训电话:0571-56020834 QQ:3163902815     全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56