【笔记】简单的junit4.9测试用例 重整理一下

来源:互联网 发布:c语言中的assert 编辑:程序博客网 时间:2024/06/09 22:33

junit4.9测试用例

测试基类

import org.junit.runner.RunWith;import org.springframework.test.context.ContextConfiguration;import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;@RunWith(SpringJUnit4ClassRunner.class)  //使用junit4进行测试  @ContextConfiguration   ({"/*.xml"}) //加载配置文件  //------------如果加入以下代码,所有继承该类的测试类都会遵循该配置,也可以不加,在测试类的方法上控制事务,参见下一个实例  @Transactional 这个非常关键,如果不加入这个注解配置,事务控制就会完全失效!  //这里的事务关联到配置文件中的事务控制器(transactionManager = "transactionManager"),同时//指定自动回滚(defaultRollback = true)。这样做操作的数据才不会污染数据库!  //@TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = true)  //------------  public class BaseJunit4Test {      ...}  // 子类public class UserServiceTest extends BaseJunit4Test {    @Resource //自动注入,默认按名称      private IUserService userServiceImpl;    @Test    public void hasMatchUser() throws Exception {        boolean b1 = userServiceImpl.hasMatchUser("admin", "123456");        boolean b2 = userServiceImpl.hasMatchUser("admin", "111111");        Assert.assertTrue(b1);        Assert.assertTrue(!b2);    }    @Test    public void getUserByName() throws Exception {        User user1 = userServiceImpl.getUserByName("admin");        User user2 = userServiceImpl.getUserByName("admin2");        Assert.assertNotNull(user1);        Assert.assertNull(user2);    }    @Test    @Transactional   //标明此方法需使用事务      @Rollback(true)  //标明使用完此方法后事务不回滚,true时为回滚      public void loginSuccess() throws Exception {        User user1 = userServiceImpl.getUserByName("admin");        userServiceImpl.loginSuccess(user1);    }}
原创粉丝点击