저는 HtmlUnit의 초보자입니다. 이미 물어보고 대답 해 주시면 저에게 실례합니다.htmlunit 및 document.addEventListener
JQuery를 사용하는 페이지에서 HtmlUnit을 사용하는 데 문제가 있습니다. 좀 더 정확히 말하면, HtmlUnit이 JQuery와 같은 document.addEventListener()를 사용하는 모든 JS 코드에서 작동하도록하는 데 문제가 있습니다. 예를 들어, 다음 페이지는 브라우저에서 작동하지만 HtmlUnit과하지 :
<html><head>
<script>
function atest() {}
document.addEventListener("load", atest, false);
</script>
</head>
<body>This page will load in a browser, but not HtmlUnit.</body></html>
결과 오류는 다음과 같습니다
======= EXCEPTION START ========
EcmaError: lineNumber=[5] column=[0] lineSource=[<no source>] name=[TypeError] sourceName=[script in http://myhost:8080/mpt/dummy from (3, 9) to (6, 10)] message= [TypeError: Cannot find function addEventListener in object [object]. (script in http://myhost:8080/mpt/dummy from (3, 9) to (6, 10)#5)]
com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot find function addEventListener in object [object]. (script in http://myhost:8080/mpt/dummy from (3, 9) to (6, 10)#5)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:705)
…
나는 JQuery와 및 HtmlUnit과의 몇 가지 다른 버전을 시도했습니다. HtmlUnit이 JQuery와 함께 작동한다고 확신 하나 (그렇습니까?), 그러나 내가 모르는 catch가있을 수 있습니다. 그래서 힌트를 주셔서 감사합니다. 내 JUnit을 코드, 관련하는 경우입니다 :
@Test
public void test() throws FailingHttpStatusCodeException, MalformedURLException, IOException {
WebClient webClient = new WebClient();
webClient.getPage("http://myhost:8080/mpt/dummy");
}
감사