如何在HtmlUnit中模拟浏览器的后退按钮?

时间:2011-10-27 16:10:25

标签: java javascript browser automation htmlunit

我还没有找到一个明确而明显的建议来模仿HtmlUnit中浏览器的“后退”按钮。你做过这个吗?如果是这样,怎么样?

我提出的最好的事情是在当前页面上执行javascript:

ScriptResult result = currentPage.executeJavaScript("javascript:window.history.back();");
currentPage = (HtmlPage)result.getNewPage();

是否有建议的方法使用htmlunit返回历史记录中的一个页面?回到上面的代码会有什么影响?虽然我没有说服自己HtmlUnit实际上对不同浏览器的javascript解释进行了任何准确的模拟,但是我使用上述代码使用HtmlUnit的完整容量来模拟浏览器的后退按钮有多接近?有没有办法比这更好地模拟浏览器的后退按钮?

另外,我注意到HtmlUnit中的History类,但它似乎毫无价值。想法?

1 个答案:

答案 0 :(得分:2)

可能我有点晚了,但这也可能对其他人有用。您可以通过访问WebWindow的历史记录返回历史记录:

webClient.getWebWindows().get(0).getHistory().back();

还有其他有用的方法。您可以查看API here