项目集成junit时遇到的加载问题

      最近接手一个项目,有时候想测试个接口都走界面,第一是麻烦,第二是没法看性能。所以我决定增加junit的单测环境,并写个基类,以后的测试类直接继承这个基类再写测试业务逻辑。

    遇到的问题首先是spring的类加载,配置文件里写了两份,但是呢有一份在项目里有没有找到,不知道什么鬼。我想保证单测环境尽量与开发一致,所以有设置bean的加载方式。

    首先来看看我的基类,基类整个代码,其他分享有写过,我就不重复写了。

    这里主要来说说我增加的新标签

@TransactionConfiguration(transactionManager="transactionManager",defaultRollback=true)这个过时的写法在spring3.2以上就被@Transactional(value="transactionManager")和@Rollback(value=true)取代了。

@ActiveProfiles({ "production" })是配合applicationContext.xml的配置文件的。为什么这样说,来看看我们项目里applicationContext的配置文件:

这里不加这个标签其实根本就不会加载相关配置文件,而且这里更气人的是这些加test的配置文件根本就不存在。所以我想保持一致就直接写了上面的bean加载模式。然后下面还有囧事,配置好这些后,直接运行这个测试基类,居然报错了。而且是个新错误,我没见过,首先排除基类代码问题,因为不是第一次用了,肯定不是这个问题,那么肯定问题还出在bean的加载上,先看报错截图:

百度了一下,在stackoverflow看到,英文的大致意识是bean的加载有脱离spring管理的导致这里报需要配置上下文什么默认servlet处理。然后说是@Configuration或@EnableWebMvc标签导致,我在项目全文搜索了下,发现确实是这么回事,还真有类上面加了这2个标签:

于是,我先注释。然后再跑基类,ok,直接正常了:

到此,我有可以开始放飞我的测试了,想测试什么测什么。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肥仔哥哥1930

来一波支持,吃不了亏上不了当

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值