我编写了一个实用程序类,它从带注释的模型生成 Wicket 组件并将它们添加到作为方法参数传入的 MarkupContainer 中。
对于此生成器的单元测试,需要一个 MarkupContainer。我试过这样:
final MarkupContainer container =
new MarkupContainer("container") {
private static final long serialVersionUID = 1L;
};
这会编译,但运行测试会引发此异常:
org.apache.wicket.WicketRuntimeException:
There is no application attached to current thread main
因此,MarkupContainer 容器需要环境中未定义为构造函数参数的其他对象。从文档中我无法弄清楚它们是什么。
我查看了 WicketTester,但没有找到让它生成 MarkupContainer 的方法。
您能否建议一种生成 MarkupContainer 实现以在 JUnit 测试中使用的方法,最好不必创建完整的 Web 应用程序?