zoukankan      html  css  js  c++  java
  • junit单元测试

    在hibernate的jar包下游junit的包,使用junit的步骤:

    1,建一个与src平行的包test

    2,在该包下建立测试类,该类继承TestCase并且在该类中写测试方法,测试方法以test开头。测试方法不能含有参数和返回值。

    实例代码:

    package com.jzq.hibernate;

    import junit.framework.TestCase;

    public class SessionTest extends TestCase {

     public void testHello()
     {
      System.out.println("-----------sessionTest.testHello1()------");
     }
     public void testHello2()
     {
      System.out.println("-----------sessionTest.testHello2()------");
     }
    }

    然后再该类中运行junit即可,或者在视图中使用junit运行某些方法,或某个方法。

    package com.jzq.hibernate;

    import java.util.Date;

    import org.hibernate.Session;
    import org.hibernate.Transaction;

    import junit.framework.TestCase;

    public class SessionTest extends TestCase {

     public void testHello()
     {
      System.out.println("-----------sessionTest.testHello1()------");
     }
     public void testHello2()
     {
      System.out.println("-----------sessionTest.testHello2()------");
     }
     public void testSave1()
     {
      Session session=null;
      User user=null;
      try {
       session = HibernateUtils.getSession();
       session.beginTransaction();
       
       //对象的瞬时状态
       user=new User();
       user.setName("李四");
       user.setPassword("123");
       user.setCreateTime(new Date());
       user.setExpireTime(new Date());
       
       //持久状态
       session.save(user);
       
       //对象修改后数据库也修改,hibernate自动与数据库同步
       user.setName("c10");
       
       session.getTransaction().commit();
      } catch (Exception e) {

       e.printStackTrace();
       session.getTransaction().rollback();
      }
      finally
      {
          HibernateUtils.closeSession(session); 
      }
      //此时user对象为离线状态
      
      //离线的user对象更新变为持久化对象
      user.setName("踩踩");
      Transaction tx=null;
      try {
       session = HibernateUtils.getSession();
       tx=session.beginTransaction();
       session.save(user);
       tx.commit();
      } catch (Exception e) {
                e.printStackTrace();
                tx.rollback();
      }
      finally
      {
          HibernateUtils.closeSession(session); 
            }
     }
     
     public void testReadByGet()
     {
      Session session=null;
      try {
       session = HibernateUtils.getSession();
       //加载一个user对象,对象成为持久化对象
       User user = (User) session.get(User.class,
         "402881ec2e2e942d012e2e942e920001");
       session.getTransaction().commit();
      } catch (Exception e) {
                e.printStackTrace();
                session.getTransaction().rollback();
      }
      finally
      {
       HibernateUtils.closeSession(session);
      }
     }
     
    }

  • 相关阅读:
    Intellij Idea免费激活方法
    算法中的 log 到底是什么?
    java 历史版本下载
    IntelliJ远程调试教程
    【转载】 tensorflow batch_normalization的正确使用姿势
    【转载】 Tensorflow如何直接使用预训练模型(vgg16为例)
    某宝购入牙膏厂U后其售后事宜的思虑
    【转载】 tensorflow: 怎样找到对应的bazel 版本和安装
    【转载】 优必选悉尼 AI 研究院何诗怡:基于课程学习的强化多标签图像分类算法 | 分享总结
    【转载】 科研工作者的哪些「新手常见错误」
  • 原文地址:https://www.cnblogs.com/jinzhengquan/p/1956391.html
Copyright © 2011-2022 走看看