我一直在使用wicketTester.getServetResponse.getDocument
获取当前页面的文本进行测试,但发现在ajax请求之后它被设置为ajax响应,而不是整个页面。
有没有办法获得整个渲染页面的表示,因为浏览器会在ajax操作后看到它?
答案 0 :(得分:2)
使用WicketTester,您可以模拟Ajax调用,并看到您的应用程序发送了正确的Ajax响应。但它并没有真正运用ajax。
所以我不相信有办法从WicketTester那里得到它。
如果您确实需要一直测试应用程序到UI,包括渲染上的Ajax / javascript效果,您可能需要使用类似Selenium的内容进行测试。
答案 1 :(得分:1)
以Wicket的方式思考我希望以下方法可行:
这个想法是:你启动一个页面进行测试,第一个响应是完成页面响应,然后你做一些Ajax调用,改变一些模型,然后你开始最后一个渲染页面作为一个实例 - 这样它将呈现包含来自Ajax调用的更新模型的页面。
答案 2 :(得分:1)
麻烦的是你可以在响应Ajax调用中放置任何Javascript。但是如果你不想处理它,你可以保存原始的整页DOM,遍历Ajax响应中的对象,在完整的DOM中通过id找到它们并用新版本替换它们。
这是多么有用,我不知道,我的猜测不会很好。所以我也可能会选择Selenium。