1

findBy我正在编写一个测试HibernateEnity 方法的JUnit 测试用例。实体从 tomcat 管理的数据源获取它的数据库连接。
JUnit 测试用例:

MyHibernateEntity entity = new MyHibernateEntity();

expectedResult = entity.findByFK(dummyFK);

如何在 tomcat 容器中运行测试用例?除了数据源之外,我们没有任何其他 Java EE 容器内组件。这就是为什么我需要一个占用空间最少的框架。到目前为止,我已经尝试过以下操作:

  1. Arquillian - 太复杂而无法实现。很多配置。
  2. Cactus - 它有 3 个类可以扩展。ServletTestCase, JspTestCase and FilterTestCase. 不确定哪一个适用于我的情况。
  3. DBUnit - 在JUnit in Action. 我不知道它是否适用于容器数据源。

    注意:我理解这个测试用例不是纯粹的单元测试。我在遗留系统中引入 JUnit,没有时间解决集成问题。

4

2 回答 2

0

你可以模拟你的数据源吗?

https://code.google.com/p/mockito/

于 2013-03-21T15:34:27.747 回答
0

使用TomcatJNDI,您可以从类内部访问所有 J​​NDI 资源,就好像它们将在 Tomcat 服务器中运行一样。要通过 JNDI 查找访问资源,您必须编写如下代码

TomcatJNDI tomcatJNDI = new TomcatJNDI();
tomcatJNDI.processContextXml(contextXmlFile);
tomcatJNDI.start();
于 2017-10-28T11:51:14.807 回答