bluesea3700 2009-08-25 15:25
浏览 247
已采纳

跨数据库单元测试如何做

使用spring+hibernate+jta,涉及到两个数据库,配置了两个数据源,如何用spring-mock做单元测试?
[b]问题补充:[/b]
其实我想用mock在真实的跨库操作中做测试,比如dao涉及到两个数据库的事务,这种dao用spring-mock怎么测?
[b]问题补充:[/b]
我在配置文件中配置了JTA的userTransaction,而UserTransaction需要web容器,从而导致JNDI找不到上下文;在spring注入abstractTransactionalDataSourceSpringContextTests的datasource时,只会注入一个。这种情况怎么用spring-mock测试。我知道一种替代方法是全部手动,不使用spring注入。如果用注入,该怎么做,能不能用mock模拟JNDI,然后使用配置文件来测试。

  • 写回答

3条回答 默认 最新

  • iteye_15225 2009-08-26 10:31
    关注

    LZ 看一下这个吧 http://www.qqread.com/java/2008/02/e396820.html

    可以脱离容器来跑JTA 跨数据库事务

    至于数据源从JNDI中获取,那么LZ也只能修改UT的Spring的配置文件,在文件中写数据源的URL、用户名和密码这些东东了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • wanghaolovezlq 2009-08-25 15:30
    关注
    评论
  • iteye_15225 2009-08-25 18:24
    关注

    我想问一下 UT和LZ的真正的代码难道还有区别吗?

    把UT的textcase看成service不就可以了?该注入的地方注入。

    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 ECharts 增加Zoom,整行包括右边的Text一起滑动
  • ¥15 关于网上一个easyx制作的见缝插针小游戏(c++)
  • ¥15 开地址法双散列函数处理碰撞
  • ¥15 想问一下这个是什么情况 虚拟机Linux打不开了
  • ¥15 联通光猫掉注册了怎么重新注册上去
  • ¥15 关于unity开发steamvr程序遇到的问题
  • ¥60 求tc downloader的下载方式
  • ¥15 华为 快捷方式 手电筒 接口
  • ¥15 Qt6.5支不支持Android13开发啊
  • ¥20 网络只能跑一半,应该如何设置