【发布时间】:2012-07-31 09:53:01
【问题描述】:
我正在处理使用 Apache XMLBeans 的应用程序(扩展 org.apache.xmlbeans.XmlObject 的 XML 结构元素的接口,扩展 org.apache.xmlbeans.impl.values.XmlComplexContentImpl 的那些接口的实现)
我得到了以下功能:
- 一个 XML 对象被传递给一个包含一些数据的方法
- 基于此数据,为此 XML 对象生成子内容
- 使用 XML 对象的 addFoo() 添加元素等
现在我想对此功能进行测试,但我不确定让这个 XML 对象进行测试的最佳方法是什么(我希望存根/模拟对象保持子树状态为容易测试)。一些选项:
- 我尝试实例化这些 FooImpl 实现对象,但它们需要引用 org.apache.xmlbeans.SchemaType sType
- 有没有办法实例化这些?
- 添加某些内容时,提供 null / mocked SchemaType 最终会导致 NPE
- 使用少数需要的方法生成存根类是可行的,但最终会生成许多 (> 100) 个方法
- 使用 Mockito 可以正常工作,但要轻松测试 xml 树结构状态,我需要使用 doAnswer() 等
一些想法?
br,图子
【问题讨论】:
标签: java unit-testing mocking xmlbeans stubbing