如何在 JUnit 测试中测试附加 javascript on wicket ajax 行为?

How to test appended javascript on wicket ajaxBehavior on JUnit test?

我有一个函数,它在 onload() 方法中附加一些 javascript 到 AjaxRequestTarget。

我通过

加载
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 错误?

来源:

How to test AjaxEventBehavior("onClick") for Apache Wicket radio button?

作为一般提示,您可以使用

访问最后的回复
String responseTxt = tester.getLastResponse().getDocument();

然后您可以查看返回给客户的内容。