Hi Ahmed, The test case provided is JWebUnit code:
public void setUp() { getTestContext().setBaseUrl("http://www.google.com"); } public void testSearch() throws Exception { beginAt("/"); setTextField("q", "htmlunit"); submit("btnG"); clickLinkWithText("HtmlUnit"); assertTitleEquals("htmlunit - Welcome to HtmlUnit"); assertLinkPresentWithText("Get started"); } but the HtmlUnit equivalent should be something like: WebClient webClient = new WebClient(); HtmlPage page = webClient.getPage("http://www.google.com"); page.<HtmlInput>getElementByName("q").setValueAttribute("htmlunit"); HtmlPage page2 = page.<HtmlInput>getElementByName("btnG").click(); List<HtmlAnchor> lnks = page2.getAnchors(); for (HtmlAnchor lnk : lnks) { if (lnk.asText().indexOf("HtmlUnit") >= 0) { lnk.click(); } } webClient.closeAllWindows(); Please note this is the latest stable release of HtmlUnit that is used. Best regards, Julien ________________________________ De : Ahmed Ashour <asash...@yahoo.com> À : htmlunit-u...@lists.sourceforge.net Cc : jwebunit-users@lists.sourceforge.net Envoyé le : Lundi, 27 Juillet 2009, 13h35mn 55s Objet : Re: [JWebUnit-users] [Htmlunit-user] NPE in HtmlUnit Hello Julien, Can we have a test case please? As the below gives 'StackOverflowError' with SVN version (to be tackled soon). WebClient webClient = new WebClient(); HtmlPage page = webClient.getPage("http://www.google.com"); page.<HtmlInput>getElementByName("q").setValueAttribute("htmlunit"); HtmlPage page2 = page.<HtmlInput>getElementByName("btnG").click();; webClient.closeAllWindows(); Yours, Ahmed ---- Blog: http://asashour.blogspot.com ________________________________ From: Julien HENRY <henr...@yahoo.fr> To: htmlunit-u...@lists.sourceforge.net Cc: jwebunit-users@lists.sourceforge.net Sent: Monday, July 27, 2009 1:18:12 PM Subject: [Htmlunit-user] NPE in HtmlUnit Hi HtmlUnit team, We have one user having this error using JWebUnit + HtmlUnit. [junit] Testcase: testSearch(xyz.ExampleWebTestCase): Caused an ERROR [junit] null [junit] java.lang.NullPointerException [junit] at com.gargoylesoftware.htmlunit.javascript.host.Event.<init>(Event.java:280) [junit] at com.gargoylesoftware.htmlunit.javascript.host.Event.<init>(Event.java:267) [junit] at com.gargoylesoftware.htmlunit.html.HtmlPage.executeEventHandlersIfNeeded(HtmlPage.java:1236) [junit] at com.gargoylesoftware.htmlunit.html.HtmlPage.cleanUp(HtmlPage.java:218) [junit] at com.gargoylesoftware.htmlunit.TopLevelWindow.close(TopLevelWindow.java:104) [junit] at com.gargoylesoftware.htmlunit.WebClient.closeAllWindows(WebClient.java:1937) [junit] at net.sourceforge.jwebunit.htmlunit.HtmlUnitTestingEngineImpl.closeBrowser(HtmlUnitTestingEngineImpl.java:204) [junit] at net.sourceforge.jwebunit.junit.WebTester.closeBrowser(WebTester.java:145) [junit] at net.sourceforge.jwebunit.junit.WebTestCase.closeBrowser(WebTestCase.java:129) [junit] at net.sourceforge.jwebunit.junit.WebTestCase.tearDown(WebTestCase.java:55) [junit] at net.sourceforge.jwebunit.junit.WebTestCase.runBare(WebTestCase.java:79) The test case simply consists in opening http://www.google.com and doing a simple search. Then JWebUnit will automatically close the browser during the tearDown. According to the stack, the NPE occurs when calling WebTester.closeAllWindows(). Any idea of the cause of the issue? Is it possible that SgmlPage.getDocumentElement() returns null? Thanks, Julien
------------------------------------------------------------------------------
_______________________________________________ JWebUnit-users mailing list JWebUnit-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jwebunit-users