HtmlUnit,如何检查每个资产是否已加载?

时间:2017-03-29 07:13:07

标签: java htmlunit

我正在使用HtmlUnit进行集成测试。

在HtmlUnit中,WebResponse::getStatusCode()用于访问当前加载页面的HTTP_STATUS_CODE。让我们说,我的Page是"关于" google.com,statusCode通常为200。

我想知道,如果HtmlUnit可以检查,是否所有必需资产(* .css,*。js)都已成功加载(200< = statusCode< [300 | 400])。

在我的用例中,我的测试页面工作正常 - 但缺少.css文件,因此布局中断了。我想在我的测试用例中断言,每个必需的断言都可以加载。

1 个答案:

答案 0 :(得分:1)

您可以拦截所有通信并存储有关所有资产的信息。

类似的东西:

new WebConnectionWrapper(webClient) {

    public WebResponse getResponse(WebRequest request) throws IOException {
        WebResponse response = super.getResponse(request);

        URL url = request.getUrl();
        int status = response.getStatusCode();
        // store the status

        return response;
    }
};