如何在JUnit测试中测试wicket ajaxBehavior上附加的javascript?
我有一个函数,在onload()方法中将一些javascript附加到AjaxRequestTarget 我把它装了如何在JUnit测试中测试wicket ajaxBehavior上附加的javascript?,javascript,ajax,unit-testing,junit,wicket,Javascript,Ajax,Unit Testing,Junit,Wicket,我有一个函数,在onload()方法中将一些javascript附加到AjaxRequestTarget 我把它装了 add(onload); onload的代码如下 AjaxEventBehavior event = new AjaxEventBehavior("onload") { @Override protected void onEvent(final AjaxRequestTarget target) { attachJava
add(onload);
onload的代码如下
AjaxEventBehavior event = new AjaxEventBehavior("onload") {
@Override
protected void onEvent(final AjaxRequestTarget target) {
attachJavascriptBehavior(target);
}
};
return event;
attachJavascriptBehavior将一些javascript作为文本添加到目标
我想用WicketTester测试一下
到目前为止,我知道我可以打如下电话:
tester.executeAjaxEvent("some:path", "onclick");
也许同样的情况也适用于超负荷。我发现我可以打电话
tester.assertRenderedPage(MyWebPage.class);
为了测试页面是否在事件之后呈现(事件处理一些内容大小),但即使我在浏览器中的控制台中出现错误,这个测试也会令人惊讶地通过。如何捕获console.log报告的javascript错误
资料来源:
作为一般提示,您可以使用
String responseTxt = tester.getLastResponse().getDocument();
然后,您可以检查返回给客户端的内容。作为一般提示,您可以使用
String responseTxt = tester.getLastResponse().getDocument();
然后,您可以检查返回给客户端的内容。作为一般提示,您可以使用
String responseTxt = tester.getLastResponse().getDocument();
然后,您可以检查返回给客户端的内容。作为一般提示,您可以使用
String responseTxt = tester.getLastResponse().getDocument();
然后,您可以检查返回给客户端的内容。已测试,未捕获我的错误:tester.assertNoErrorMessage();已测试,未捕获我的错误:tester.assertNoErrorMessage();已测试,未捕获我的错误:tester.assertNoErrorMessage();已测试,未捕获我的错误:tester.assertNoErrorMessage();正确的。您需要将最后一个响应作为字符串处理,因为Ajax调用不会重新绘制整个页面。通常Ajax响应只返回页面部分的新标记。这提供了一些东西,是一种正确的解决方案。我的只是没有在这里提供任何有用的东西,因为当我获取文档时,最后一页的数据位置上有一个等待图标滚动。也许一个计时器等待几秒钟会有帮助,或者我不可能绕过这个测试。添加10秒的超时时间并没有改变任何事情。这样我可以看到ajax从服务器加载的内容、css的ajax事件目标更改以及我无法跟踪的与布局相关的更改。这是最接近的,我接受它,因为没有更接近的猜测。对。您需要将最后一个响应作为字符串处理,因为Ajax调用不会重新绘制整个页面。通常Ajax响应只返回页面部分的新标记。这提供了一些东西,是一种正确的解决方案。我的只是没有在这里提供任何有用的东西,因为当我获取文档时,最后一页的数据位置上有一个等待图标滚动。也许一个计时器等待几秒钟会有帮助,或者我不可能绕过这个测试。添加10秒的超时时间并没有改变任何事情。这样我可以看到ajax从服务器加载的内容、css的ajax事件目标更改以及我无法跟踪的与布局相关的更改。这是最接近的,我接受它,因为没有更接近的猜测。对。您需要将最后一个响应作为字符串处理,因为Ajax调用不会重新绘制整个页面。通常Ajax响应只返回页面部分的新标记。这提供了一些东西,是一种正确的解决方案。我的只是没有在这里提供任何有用的东西,因为当我获取文档时,最后一页的数据位置上有一个等待图标滚动。也许一个计时器等待几秒钟会有帮助,或者我不可能绕过这个测试。添加10秒的超时时间并没有改变任何事情。这样我可以看到ajax从服务器加载的内容、css的ajax事件目标更改以及我无法跟踪的与布局相关的更改。这是最接近的,我接受它,因为没有更接近的猜测。对。您需要将最后一个响应作为字符串处理,因为Ajax调用不会重新绘制整个页面。通常Ajax响应只返回页面部分的新标记。这提供了一些东西,是一种正确的解决方案。我的只是没有在这里提供任何有用的东西,因为当我获取文档时,最后一页的数据位置上有一个等待图标滚动。也许一个计时器等待几秒钟会有帮助,或者我不可能绕过这个测试。添加10秒的超时时间并没有改变任何事情。这样我可以看到ajax从服务器加载的内容、css的ajax事件目标更改以及我无法跟踪的与布局相关的更改。这是最接近的,我接受它,因为没有更接近的猜测。