这是我的场景。我正在测试一个 Wicket 应用程序,并将页面文本解析wicktetTester.getServletResponse.getDocument
为 XML,以便使用 XPath 查找组件。这是相当昂贵的,所以我想保留dom4j.Document
直到页面更改,然后重建它。
我知道当前页面 -wicketTester.getLastRenderedPage
但是如果我提交一个表单并停留在同一页面上,那么该Page
对象就是同一个对象。我可以查询页面的哪些属性以知道它已被重新渲染并且我需要重建我的 DOM?
public Document getDocument() {
if (tester.getLastRenderedPage() != lastPageParsed && SOME_OTHER_TEST) {
cachedDocument = parse(tester.getServletResponse().getDocument();
lastPageParsed = tester.getLastRenderedPage();
}
return cachedDocument;
}