junit4.9测试用例

测试基类

  1. import org.junit.runner.RunWith;
  2. import org.springframework.test.context.ContextConfiguration;
  3. import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
  4. @RunWith(SpringJUnit4ClassRunner.class)  //使用junit4进行测试
  5. @ContextConfiguration
  6. ({"/*.xml"}) //加载配置文件
  7. //------------如果加入以下代码,所有继承该类的测试类都会遵循该配置,也可以不加,在测试类的方法上控制事务,参见下一个实例
  8. @Transactional 这个非常关键,如果不加入这个注解配置,事务控制就会完全失效!
  9. //
  10. //这里的事务关联到配置文件中的事务控制器(transactionManager = "transactionManager"),同时//指定自动回滚(defaultRollback = true)。这样做操作的数据才不会污染数据库!
  11. //@TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = true)
  12. //------------
  13. public class BaseJunit4Test {
  1. <span style="white-space:pre">  </span>...
  2. }

关于事务的配置文件点这里

子类

    1. public class UserServiceTest extends BaseJunit4Test {
    2. @Resource //自动注入,默认按名称
    3. private IUserService userServiceImpl;
    4. @Test
    5. public void hasMatchUser() throws Exception {
    6. boolean b1 = userServiceImpl.hasMatchUser("admin", "123456");
    7. boolean b2 = userServiceImpl.hasMatchUser("admin", "111111");
    8. Assert.assertTrue(b1);
    9. Assert.assertTrue(!b2);
    10. }
    11. @Test
    12. public void getUserByName() throws Exception {
    13. User user1 = userServiceImpl.getUserByName("admin");
    14. User user2 = userServiceImpl.getUserByName("admin2");
    15. Assert.assertNotNull(user1);
    16. Assert.assertNull(user2);
    17. }
    18. @Test
    19. <strong>@Transactional   //标明此方法需使用事务
    20. <span style="white-space:pre">  </span>@Rollback(true)  //标明使用完此方法后事务不回滚,true时为回滚</strong>
    21. public void loginSuccess() throws Exception {
    22. User user1 = userServiceImpl.getUserByName("admin");
    23. userServiceImpl.loginSuccess(user1);
    24. }
    25. }

junit4.9测试用例 spring测试用例 Assert 注解的更多相关文章

  1. API Studio 5.1.2 版本更新:加入全局搜索、支持批量测试API测试用例、读取代码注解生成文档支持Github与码云等

    最近在EOLINKER的开发任务繁重,许久在博客园没有更新产品动态了,经过这些日子,EOLINKER又有了长足的进步,增加了更多易用的功能,比如加入全局搜索.支持批量测试API测试用例.读取代码注解生 ...

  2. Spring IoC @Autowired 注解详解

    前言 本系列全部基于 Spring 5.2.2.BUILD-SNAPSHOT 版本.因为 Spring 整个体系太过于庞大,所以只会进行关键部分的源码解析. 我们平时使用 Spring 时,想要 依赖 ...

  3. Spring笔记04_AOP注解开发_模板_事务

    目录 1. Spring基于AspectJ的注解的AOP开发 1. 1 SpringAOP的注解入门 1.2 Spring的AOP的注解通知类型 1.2.1 @Before:前置通知 1.2.2 @A ...

  4. Spring之基于注解的注入

    对于DI使用注解,将不再需要在Spring配置文件中声明Bean实例.Spring中使用注解,需要在原有Spring运行环境基础上再做一些改变,完成以下三个步骤. (1)导入AOP的Jar包.因为注解 ...

  5. Spring的相关注解

    说明写在最前面:摘录于   博客园--受伤滴小萝卜   文章 文章链接受伤滴小萝卜文章--Spring注解 本文章只用作学习和帮助其他人学习记录使用 Spring 注解学习笔记 声明Bean的注解: ...

  6. Spring Cache缓存注解

    目录 Spring Cache缓存注解 @Cacheable 键生成器 @CachePut @CacheEvict @Caching @CacheConfig Spring Cache缓存注解 本篇文 ...

  7. Spring+Mybatis基于注解整合Redis

    基于这段时间折腾redis遇到了各种问题,想着整理一下.本文主要介绍基于Spring+Mybatis以注解的形式整合Redis.废话少说,进入正题. 首先准备Redis,我下的是Windows版,下载 ...

  8. Spring MVC常用注解

    cp by http://www.cnblogs.com/leskang/p/5445698.html 1.@Controller 在SpringMVC 中,控制器Controller 负责处理由Di ...

  9. 利用spring AOP 和注解实现方法中查cache-我们到底能走多远系列(46)

    主题:这份代码是开发中常见的代码,查询数据库某个主表的数据,为了提高性能,做一次缓存,每次调用时先拿缓存数据,有则直接返回,没有才向数据库查数据,降低数据库压力. public Merchant lo ...

随机推荐

  1. python 中 reduce 函数的使用

    reduce()函数也是Python内置的一个高阶函数. reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接 ...

  2. python Django知识点总结

    python Django知识点总结 一.Django创建项目: CMD 终端:Django_admin startproject sitename(文件名) 其他常用命令: 其他常用命令: 通过类创 ...

  3. Java中的变量数据类型补充

    Java中变量的数据类型的补充 变量按照数据类型进行分类 1.基本数据类型 数值型:①整数类型(byte,short,int,long)②浮点型(float,doubbe)③字符型(char)④布尔型 ...

  4. DOM 节点

    <html> <head> <title>DOM 教程</title> </head> <body> <h1>DOM ...

  5. requests之一:HTTP OAUTH认证(1)图形解释流程

  6. js switch判断 三目运算 while 及 属性操作

    三 目运算:如var a = 10: var b= 12: c = a>b ?a:b; 若成立执行a否则执行b var isHide = true; 若用if判断语句如下 if(isHide) ...

  7. 我的webstorm 使用总结

    有一次 ,我改了公共组件里的好多组件 ,然后我肯定是哪里改的不对 ,出语法错误了 ,但是我的 webstorm 编译并没有报错,然后我就手动一点点 改 ,去看 ,最后还是没有找到 ,我就把文件夹给删了 ...

  8. Spring Cloud Eureka 自我保护机制

    Eureka Server 在运行期间会去统计心跳失败比例在 15 分钟之内是否低于 85%,如果低于 85%,Eureka Server 会将这些实例保护起来,让这些实例不会过期,但是在保护期内如果 ...

  9. Java的递归、IO流

    .t1 { background-color: #ff8080; width: 1100px; height: 40px } 一.递归 [递归] 1. 在函数自身内部,调用函数本身的方式,称为递归. ...

  10. Windows 2012服务器安装GPU版TensorFlow完全攻略

    一.首先,推荐用Anaconda安装 因为Anaconda本身就已经默认安装了很多常用的Python库,可以省去大量的库安装过程,并且解决兼容性问题. Anaconda本身的安装也非常简单,搜索Ana ...