zoukankan      html  css  js  c++  java
  • Spring测试框架JUnit4.4 还蛮详细的

    TestContext 可以运行在 JUnit 3.8、JUnit 4.4、TestNG 等测试框架下。

    Spring的版本2.5+JUnit4.4+log4j1.2.12

    @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations={"http://www.cnblogs.com/../applicationContext.xml","http://www.cnblogs.com/../daoContext.xml"}) @TransactionConfiguration(transactionManager="transactionManager") @Transactional public class KindDaoTest {     @Autowired     KindDao kindDao;
        @Test     @Rollback(false)     public void findAll()     {             }
    }

    该单元测试的特点:运用注释,使得编写测试更加简单,以及可以设置是否回滚。

    @RunWith(SpringJUnit4ClassRunner.class)

    表示该测试用例是运用junit4进行测试,也可以换成其他测试框架

    @TransactionConfiguration(transactionManager="transactionManager")为可选项,该项不会影响回滚的设置。

    @ContextConfiguration(locations={"http://www.cnblogs.com/../applicationContext.xml","http://www.cnblogs.com/../daoContext.xml"})

    该路径的设置时相当于该单元测试所在的路径,也可以用“classpath:xxx.xml”进行设置,该设置还有一个inheritLocations的属性,默认为true,表示子类可以继承该设置。

    @Autowired

    表示bean自动加载,而不用像之前的两个类要添加一个set的方法。

    @Test

    表示该方法是测试用例

    @Rollback(false)

    表示该测试用例不回滚

    问题:

    1.报错log4j:WARN No appenders could be found for logger (org.springframework.test.context.junit4.SpringJUnit4ClassRunner). log4j:WARN Please initialize the log4j system properly.

    解答:将log4j.properties文件放在/resource下面

    2.log4j的版本必须在1.2.12以后

    注意:

    操作数据库时,数据并没有真正插入到数据库中。

    这是TestContext起的作用,调用事务返回了并没有真正插入数据库。

  • 相关阅读:
    session、cookie、token
    跨域问题-nginx代理
    跨域问题-jsonp
    fat32转ntfs
    nginx日志输出,https,ssl
    nginx安装
    MySql(一)表类型(存储引擎)
    ShowDoc,APIDoc,可道云API,语雀-适合IT企业的文档工具
    Docker Compose搭建Redis一主二从三哨兵高可用集群
    Docker容器启动Mysql,Docker实现Mysql主从,读写分离
  • 原文地址:https://www.cnblogs.com/ejllen/p/3685599.html
Copyright © 2011-2022 走看看