List of usage examples for org.openqa.selenium WebDriver get
void get(String url);
From source file:com.gargoylesoftware.htmlunit.javascript.host.WebSocketTest.java
License:Apache License
/** * @throws Exception if the test fails/*from w ww .j a va2 s .c o m*/ */ @Test @Alerts(DEFAULT = { "onOpenListener", "onOpen", "onMessageTextListener", "server_text", "ws://localhost:12345", "", "null", "onMessageText", "server_text", "ws://localhost:12345", "", "null", "onMessageBinaryListener", "[object ArrayBuffer]", "ws://localhost:12345", "", "null", "onMessageBinary", "[object ArrayBuffer]", "ws://localhost:12345", "", "null", "onCloseListener code: 1000 wasClean: true", "onClose code: 1000 wasClean: true" }, IE = { "onOpenListener", "onOpen", "onMessageTextListener", "server_text", "", "undefined", "null", "onMessageText", "server_text", "", "undefined", "null", "onMessageBinaryListener", "[object ArrayBuffer]", "", "undefined", "null", "onMessageBinary", "[object ArrayBuffer]", "", "undefined", "null", "onCloseListener code: 1005 wasClean: true", "onClose code: 1005 wasClean: true" }) @NotYetImplemented(IE) public void events() throws Exception { startWebServer("src/test/resources/com/gargoylesoftware/htmlunit/javascript/host", null, null, new EventsWebSocketHandler()); final WebDriver driver = getWebDriver(); driver.get(URL_FIRST + "WebSocketTest_events.html"); final WebElement logElement = driver.findElement(By.id("log")); int counter = 0; String text; do { Thread.sleep(100); text = logElement.getAttribute("value").trim().replaceAll("\r", ""); } while (text.length() > 0 && counter++ < 10); assertEquals(String.join("\n", getExpectedAlerts()), text); stopWebServers(); }
From source file:com.gargoylesoftware.htmlunit.javascript.host.WebSocketTest.java
License:Apache License
/** * @throws Exception if the test fails//from w ww. j av a 2 s . co m */ @Test @Alerts({ "onError[object Event]", "onCloseListener code: 1006 wasClean: false", "onClose code: 1006 wasClean: false" }) public void eventsNoSocketServer() throws Exception { startWebServer("src/test/resources/com/gargoylesoftware/htmlunit/javascript/host", null, null, null); final WebDriver driver = getWebDriver(); driver.get(URL_FIRST + "WebSocketTest_events.html"); final WebElement logElement = driver.findElement(By.id("log")); int counter = 0; String text; do { Thread.sleep(100); text = logElement.getAttribute("value").trim().replaceAll("\r", ""); } while (text.length() > 0 && counter++ < 10); assertEquals(String.join("\n", getExpectedAlerts()), text); }
From source file:com.gargoylesoftware.htmlunit.javascript.host.WebSocketTest.java
License:Apache License
/** * @throws Exception if the test fails/*from w w w .ja v a 2s . c om*/ */ @Test public void listener() throws Exception { startWebServer("src/test/resources/com/gargoylesoftware/htmlunit/javascript/host", null, null, new EventsWebSocketHandler()); final WebDriver driver = getWebDriver(); WebSocketListener listener = null; if (driver instanceof HtmlUnitDriver) { final WebClient webClient = getWebWindowOf((HtmlUnitDriver) driver).getWebClient(); final WebClientInternals.Listener internalsListener = mock(WebClientInternals.Listener.class); listener = mock(WebSocketListener.class); final WebSocketListener listenerFinal = listener; doAnswer(new Answer<Void>() { @Override public Void answer(final InvocationOnMock invocation) { final Object[] args = invocation.getArguments(); final WebSocket webSocket = (WebSocket) args[0]; webSocket.setWebSocketListener(listenerFinal); return null; } }).when(internalsListener).webSocketCreated(any()); webClient.getInternals().addListener(internalsListener); } driver.get(URL_FIRST + "WebSocketTest_listener.html"); if (listener != null) { verify(listener, timeout(DEFAULT_WAIT_TIME)).onWebSocketConnect(any()); } stopWebServers(); }
From source file:com.gargoylesoftware.htmlunit.libraries.CurvyCornersTest.java
License:Apache License
private void doTest(final String filename) throws Exception { final WebDriver driver = getWebDriver(); driver.get(getBaseUrl() + filename); }
From source file:com.gargoylesoftware.htmlunit.libraries.DojoTestBase.java
License:Apache License
void test(final String module) throws Exception { try {//from w ww. j a v a2 s . c o m final WebDriver webdriver = getWebDriver(); final String url = URL_FIRST + "util/doh/runner.html?testModule=" + module; webdriver.get(url); final long runTime = 60 * DEFAULT_WAIT_TIME; final long endTime = System.currentTimeMillis() + runTime; // wait a bit to let the tests start Thread.sleep(DEFAULT_WAIT_TIME); String status = getResultElementText(webdriver); while (!"Stopped".equals(status)) { Thread.sleep(DEFAULT_WAIT_TIME); if (System.currentTimeMillis() > endTime) { fail("Test runs too long (longer than " + runTime / 1000 + "s)"); } status = getResultElementText(webdriver); } Thread.sleep(100); // to make tests a bit more stable final WebElement output = webdriver.findElement(By.id("logBody")); final List<WebElement> lines = output.findElements(By.xpath(".//div")); final StringBuilder result = new StringBuilder(); for (WebElement webElement : lines) { final String text = webElement.getText(); if (StringUtils.isNotBlank(text)) { result.append(text); result.append("\n"); } } String expFileName = StringUtils.replace(module, ".", ""); expFileName = StringUtils.replace(expFileName, "_", ""); String expected = loadExpectation(expFileName); expected = StringUtils.replace(expected, "\r\n", "\n"); assertEquals(normalize(expected), normalize(result.toString())); // assertEquals(expected, result.toString()); } catch (final Exception e) { e.printStackTrace(); Throwable t = e; while ((t = t.getCause()) != null) { t.printStackTrace(); } throw e; } }
From source file:com.gargoylesoftware.htmlunit.libraries.ExtJS22Test.java
License:Apache License
/** * Loads the Ext JS test page using the specified example. * * @param example the example name/*from w ww .ja v a 2s. co m*/ * @param htmlName the page name * @return the loaded page * @throws Exception if an error occurs */ protected WebDriver getPage(final String example, final String htmlName) throws Exception { final WebDriver driver = getWebDriver(); driver.get(URL_FIRST + "examples/" + example + "/" + htmlName + ".html"); return driver; }
From source file:com.gargoylesoftware.htmlunit.libraries.JQuery1113Test.java
License:Apache License
/** * Runs the specified test.//from w w w . j a v a 2 s .co m * @param testName the test name * @throws Exception if an error occurs */ protected void runTest(final String testName) throws Exception { final int testNumber = readTestNumber(testName); if (testNumber == -1) { assertEquals("Test number not found for: " + testName, 0, getExpectedAlerts().length); return; } final long runTime = 60 * DEFAULT_WAIT_TIME; final long endTime = System.currentTimeMillis() + runTime; try { final WebDriver webdriver = getWebDriver(); final String url = "http://localhost:" + PORT + "/jquery/test/index.html?dev&testNumber=" + testNumber; webdriver.get(url); while (!getResultElementText(webdriver).startsWith("Tests completed")) { Thread.sleep(100); if (System.currentTimeMillis() > endTime) { fail("Test #" + testNumber + " runs too long (longer than " + runTime / 1000 + "s)"); } } final WebElement output = webdriver.findElement(By.id("qunit-test-output0")); String result = output.getText(); result = result.substring(0, result.indexOf("Rerun")).trim(); final String expected = testName + " (" + getExpectedAlerts()[0] + ")"; if (!expected.contains(result)) { System.out.println("--------------------------------------------"); System.out.println("URL: " + url); System.out.println("--------------------------------------------"); System.out.println("Test: " + webdriver.findElement(By.id("qunit-tests")).getText()); System.out.println("--------------------------------------------"); System.out.println("Failures:"); final List<WebElement> failures = webdriver .findElements(By.cssSelector(".qunit-assert-list li.fail")); for (WebElement webElement : failures) { System.out.println(" " + webElement.getText()); } System.out.println("--------------------------------------------"); fail(new ComparisonFailure("", expected, result).getMessage()); } } catch (final Exception e) { e.printStackTrace(); Throwable t = e; while ((t = t.getCause()) != null) { t.printStackTrace(); } throw e; } }
From source file:com.gargoylesoftware.htmlunit.libraries.JQuery182Test.java
License:Apache License
/** * Runs the specified test.// ww w .j ava 2 s. com * @param testName the test name * @throws Exception if an error occurs */ protected void runTest(final String testName) throws Exception { final int testNumber = readTestNumber(testName); if (testNumber == -1) { assertEquals("Test number not found for: " + testName, 0, getExpectedAlerts().length); return; } final long runTime = 60 * DEFAULT_WAIT_TIME; final long endTime = System.currentTimeMillis() + runTime; try { final WebDriver webdriver = getWebDriver(); webdriver.get("http://localhost:" + PORT + "/jquery/test/index.html?testNumber=" + testNumber); final WebElement status = webdriver.findElement(By.id("qunit-testresult")); while (!status.getText().startsWith("Tests completed")) { Thread.sleep(100); if (System.currentTimeMillis() > endTime) { fail("Test #" + testNumber + " runs too long (longer than " + runTime / 1000 + "s)"); } } final WebElement output = webdriver.findElement(By.id("qunit-test-output0")); String result = output.getText(); result = result.substring(0, result.indexOf("Rerun")).trim(); final String expected = testName + " (" + getExpectedAlerts()[0] + ")"; if (!expected.contains(result)) { System.out.println("-> " + webdriver.findElement(By.id("qunit-tests")).getText()); fail(new ComparisonFailure("", expected, result).getMessage()); } } catch (final Exception e) { e.printStackTrace(); Throwable t = e; while ((t = t.getCause()) != null) { t.printStackTrace(); } throw e; } }
From source file:com.gargoylesoftware.htmlunit.libraries.JQuery1x8x2Test.java
License:Apache License
/** * Runs the specified test.//from www .j a v a 2 s . c o m * @param testName the test name * @throws Exception if an error occurs */ @Override protected void runTest(final String testName) throws Exception { final int testNumber = readTestNumber(testName); if (testNumber == -1) { assertEquals("Test number not found for: " + testName, 0, getExpectedAlerts().length); return; } final long runTime = 60 * DEFAULT_WAIT_TIME; final long endTime = System.currentTimeMillis() + runTime; try { final WebDriver webdriver = getWebDriver(); final String url = URL_FIRST + "jquery/test/index.html?testNumber=" + testNumber; webdriver.get(url); final WebElement status = webdriver.findElement(By.id("qunit-testresult")); while (!status.getText().startsWith("Tests completed")) { Thread.sleep(100); if (System.currentTimeMillis() > endTime) { fail("Test #" + testNumber + " runs too long (longer than " + runTime / 1000 + "s)"); } } final WebElement output = webdriver.findElement(By.id("qunit-test-output0")); String result = output.getText(); result = result.substring(0, result.indexOf("Rerun")).trim(); final String expected = testName + " (" + getExpectedAlerts()[0] + ")"; if (!expected.contains(result)) { System.out.println("-> " + webdriver.findElement(By.id("qunit-tests")).getText()); fail(new ComparisonFailure("", expected, result).getMessage()); } } catch (final Exception e) { e.printStackTrace(); Throwable t = e; while ((t = t.getCause()) != null) { t.printStackTrace(); } throw e; } }
From source file:com.gargoylesoftware.htmlunit.libraries.JQueryTestBase.java
License:Apache License
/** * Runs the specified test./* w ww .j a v a 2 s.c om*/ * @param testName the test name * @throws Exception if an error occurs */ protected void runTest(final String testName) throws Exception { final int testNumber = readTestNumber(testName); if (testNumber == -1) { assertEquals("Test number not found for: " + testName, 0, getExpectedAlerts().length); return; } final long runTime = 60 * DEFAULT_WAIT_TIME; final long endTime = System.currentTimeMillis() + runTime; try { final WebDriver webdriver = getWebDriver(); final String url = URL_FIRST + "jquery/test/index.html?dev&testNumber=" + testNumber; webdriver.get(url); while (!getResultElementText(webdriver).startsWith("Tests completed")) { Thread.sleep(100); if (System.currentTimeMillis() > endTime) { fail("Test #" + testNumber + " runs too long (longer than " + runTime / 1000 + "s)"); } } final WebElement output = webdriver.findElement(By.id("qunit-test-output0")); String result = output.getText(); result = result.substring(0, result.indexOf("Rerun")).trim(); final String expected = testName + " (" + getExpectedAlerts()[0] + ")"; if (!expected.contains(result)) { System.out.println("--------------------------------------------"); System.out.println("URL: " + url); System.out.println("--------------------------------------------"); System.out.println("Test: " + webdriver.findElement(By.id("qunit-tests")).getText()); System.out.println("--------------------------------------------"); System.out.println("Failures:"); final List<WebElement> failures = webdriver .findElements(By.cssSelector(".qunit-assert-list li.fail")); for (WebElement webElement : failures) { System.out.println(" " + webElement.getText()); } System.out.println("--------------------------------------------"); fail(new ComparisonFailure("", expected, result).getMessage()); } } catch (final Exception e) { e.printStackTrace(); Throwable t = e; while ((t = t.getCause()) != null) { t.printStackTrace(); } throw e; } }