List of usage examples for org.openqa.selenium WebElement getAttribute
String getAttribute(String name);
From source file:com.hotwire.selenium.mobile.results.MobileHotelResultsPage.java
License:Open Source License
/** * Assert that the result set is sorted by the criteria by looking at the URL *//*w w w. ja v a 2 s . c o m*/ public void assertSortSuccessful(String criteria) { new MobileHotelResultsPage(getWebDriver()); ArrayList<Double> elementValues = new ArrayList<Double>(); boolean sortAscending = false; if ("price".equalsIgnoreCase(criteria)) { sortAscending = (this.sortByPrice.getAttribute("class").contains("arrowUp")) ? true : false; for (WebElement element : this.resultRates) { elementValues.add(new Double(element.getText().replaceAll("[^0-9.]", ""))); } } else if ("distance".equalsIgnoreCase(criteria)) { // Distance always sorted in ascending order. sortAscending = true; for (WebElement element : this.resultDistances) { String text = element.getText(); elementValues.add(new Double(text.substring(text.indexOf("(") + 1, text.indexOf(" ")))); } } else if ("star rating".equalsIgnoreCase(criteria)) { sortAscending = (this.sortByStarRating.getAttribute("class").contains("arrowUp")) ? true : false; for (WebElement element : this.resultRatings) { String starRating = element.getAttribute("title").trim(); // Handle the case where there is no retail hero module on the results page if (starRating != null && !starRating.isEmpty()) { elementValues.add(new Double(starRating)); } } } else if ("best value".equalsIgnoreCase(criteria)) { // All results on the page are sorted in ascending order by the best value index exposed via the // data attribute 'data-bv-index' sortAscending = true; for (WebElement element : this.bestValueResultContainers) { // Add in the rate for best value result. elementValues.add(Double.valueOf(element.getAttribute("data-bv-index"))); } } else { throw new RuntimeException("Unrecognized sort criteria."); } if (elementValues.size() > 1) { assertThat(areValuesInListSorted(elementValues, sortAscending)) .as("Expected " + ((!sortAscending) ? "descending" : "ascending") + " ordered results to be true but got false instead") .isTrue(); } else if (elementValues.isEmpty()) { throw new ZeroResultsTestException("0 results returned."); } else { // 1 result list is always sorted. LOGGER.info("1 result returned."); } }
From source file:com.hotwire.test.steps.purchase.hotel.HotelPurchaseModelWebApp.java
License:Open Source License
@Override public void verifyAllPaymentOptionsEnabled() { List<WebElement> payments = new HotelBillingOnePage(getWebdriverInstance()).getAllPaymentMethodElements(); for (WebElement element : payments) { assertThat(element.isEnabled())// w w w .ja v a2 s .c o m .as("Expected " + element.getAttribute("id") + " to be enabled but it was not.").isTrue(); } }
From source file:com.hotwire.test.steps.purchase.hotel.HotelPurchaseModelWebApp.java
License:Open Source License
@Override public void verifyCreditCardOnlyEnabled() { boolean isUnavailable = new HotelTripInsuranceFragment(getWebdriverInstance()).isTripInsuranceUnavailable(); List<WebElement> payments = new HotelBillingOnePage(getWebdriverInstance()).getAllPaymentMethodElements(); for (WebElement element : payments) { String id = element.getAttribute("id"); if (id.contains("savedCreditCards") || id.contains("useNewCard") || id.contains("newCreditCard")) { assertThat(element.isEnabled()).as("Expected " + id + " to be enabled but it was not.").isTrue(); } else {// w w w . ja v a 2 s . co m if (!isUnavailable) { // No use checking these if trip insurance // is not available. assertThat(element.isEnabled()).as("Expected " + id + " to be disabled but it was not.") .isFalse(); } } } }
From source file:com.hotwire.test.steps.search.hotel.HotelSearchModelRowWebApp.java
License:Open Source License
@Override public void verifyTripAdvisorInResults(boolean isVisible) { HotelResultsPage resultsPage = new HotelResultsPage(getWebdriverInstance()); List<WebElement> resultsWithTripAdvisor = resultsPage.getSearchResultsFragment() .getResultsWithTripAdvisorRatings(); if (resultsWithTripAdvisor.size() == 0) { throw new ZeroResultsTestException("0 results containing a Trip Advisor module."); }//from w w w . java 2 s . com for (WebElement resultRating : resultsWithTripAdvisor) { LOGGER.info( "Verifiying Trip Advisor rating of " + resultRating.getAttribute("class") + " is displayed."); assertThat(resultRating.isDisplayed()).isTrue(); } }
From source file:com.htmlhifive.pitalium.it.assertion.partialpage.CompareDifferentPositionTest.java
License:Apache License
/** * Expected?Actual?????????????<br> * ??????SET_EXPECTED?1??????<br>//from www .j ava 2 s. co m * IE711/FireFox/Chrome/Android 2.3, 4.0, 4.4/iOS 8.1<br> * ?assertView??? */ @Test public void compareDifferentPositionInt() { driver.get(BASE_URL); // ACTUAL?????? // ???? if (config.getEnvironment().getExecMode() == ExecMode.RUN_TEST) { final int expendHeight = 1; WebElement headerglobal = driver.findElement(By.id("headerglobal")); driver.executeJavaScript("document.getElementById('headerglobal').style.height = '" + (Integer.parseInt(headerglobal.getAttribute("clientHeight")) + expendHeight) + "';"); } List<CompareTarget> targets = new ArrayList<CompareTarget>(); targets.add(new CompareTarget(ScreenArea.of(SelectorType.CSS_SELECTOR, "#about"))); assertionView.assertView("compareDifferentFontColor", targets.toArray(new CompareTarget[] {}), new DomSelector[] { new DomSelector(SelectorType.CLASS_NAME, "gototop") }); }
From source file:com.htmlhifive.pitalium.it.assertion.partialpage.CompareDifferentPositionTest.java
License:Apache License
/** * Expected?Actual?????????movesTarget=true???<br> * ??????SET_EXPECTED?1??????<br>/*www.jav a 2 s . c o m*/ * IE711/FireFox/Chrome/Android 2.3, 4.0, 4.4/iOS 8.1<br> * ?assertView??? */ @Test public void compareDifferentPositionDoubleMovesTargetTrue() { driver.get(BASE_URL); // ACTUAL?????? // ???? if (config.getEnvironment().getExecMode() == ExecMode.RUN_TEST) { final double expendHeight = 0.5; WebElement headerglobal = driver.findElement(By.id("headerglobal")); driver.executeJavaScript("document.getElementById('headerglobal').style.height = '" + (Integer.parseInt(headerglobal.getAttribute("clientHeight")) + expendHeight) + "';"); } List<CompareTarget> targets = new ArrayList<CompareTarget>(); targets.add(new CompareTarget(ScreenArea.of(SelectorType.CSS_SELECTOR, "#about"), null, true)); assertionView.assertView("compareDifferentFontColor", targets.toArray(new CompareTarget[] {}), new DomSelector[] { new DomSelector(SelectorType.CLASS_NAME, "gototop") }); }
From source file:com.htmlhifive.pitalium.it.assertion.partialpage.CompareDifferentPositionTest.java
License:Apache License
/** * Expected?Actual?????????movesTarget=false???<br> * ??????SET_EXPECTED?1??????<br>//from ww w. j a v a 2 s .c om * IE711/FireFox/Chrome/Android 2.3, 4.0, 4.4/iOS 8.1<br> * ?assertView????????? */ @Test public void compareDifferentPositionDoubleMovesTargetFalse() { driver.get(BASE_URL); // ACTUAL?????? // ???? if (config.getEnvironment().getExecMode() == ExecMode.RUN_TEST) { final double expendHeight = 0.5; WebElement headerglobal = driver.findElement(By.id("headerglobal")); driver.executeJavaScript("document.getElementById('headerglobal').style.height = '" + (Integer.parseInt(headerglobal.getAttribute("clientHeight")) + expendHeight) + "';"); // thrown.expect(AssertionError.class); } List<CompareTarget> targets = new ArrayList<CompareTarget>(); targets.add(new CompareTarget(ScreenArea.of(SelectorType.CSS_SELECTOR, "#about"), null, false)); assertionView.assertView("compareDifferentFontColor", targets.toArray(new CompareTarget[] {}), new DomSelector[] { new DomSelector(SelectorType.CLASS_NAME, "gototop") }); }
From source file:com.htmlhifive.pitalium.it.assertion.partialpage.CompareDifferentSizeTest.java
License:Apache License
/** * Expected?Actual???????????????<br> * ??????SET_EXPECTED?1??????<br>//from w w w.j ava 2 s. co m * IE711/FireFox/Chrome/Android 2.3, 4.0, 4.4/iOS 8.1<br> * ?assertView?????????? */ //@Test public void compareDifferentWidth() { driver.get(BASE_URL); // ACTUAL?????? if (config.getEnvironment().getExecMode() == ExecMode.RUN_TEST) { final int widthToShrink = 1; WebElement about = driver.findElement(By.id("about")); driver.executeJavaScript("document.getElementById('about').style.width = '" + (Integer.parseInt(about.getAttribute("clientWidth")) - widthToShrink) + "';"); thrown.expect(AssertionError.class); } List<CompareTarget> targets = new ArrayList<CompareTarget>(); targets.add(new CompareTarget(ScreenArea.of(SelectorType.CSS_SELECTOR, "#about"))); assertionView.assertView("compareDifferentWidth", targets); }
From source file:com.htmlhifive.pitalium.it.assertion.partialpage.CompareDifferentSizeTest.java
License:Apache License
/** * Expected?Actual????????????????<br> * ??????SET_EXPECTED?1??????<br>//w ww .ja v a 2 s.c o m * IE711/FireFox/Chrome/Android 2.3, 4.0, 4.4/iOS 8.1<br> * ?assertView?????????? */ @Test public void compareDifferentHeight() { driver.get(BASE_URL); // ACTUAL?????? if (config.getEnvironment().getExecMode() == ExecMode.RUN_TEST) { final int heightToShrink = 1; WebElement about = driver.findElement(By.id("about")); driver.executeJavaScript("document.getElementById('about').style.width = '" + (Integer.parseInt(about.getAttribute("clientWidth")) - heightToShrink) + "';"); thrown.expect(AssertionError.class); } List<CompareTarget> targets = new ArrayList<CompareTarget>(); targets.add(new CompareTarget(ScreenArea.of(SelectorType.CSS_SELECTOR, "#about"))); assertionView.assertView("compareDifferentHeight", targets); }
From source file:com.ibm.sbt.automation.core.environment.TestEnvironment.java
License:Open Source License
/** * Detect what type of authentication is being used * /*w w w. j av a 2 s.co m*/ * @param baseTest * @param loginForm * @return {AuthType} */ public AuthType detectAuthType(BaseTest baseTest, WebElement loginForm) { // if results are available then no need to check for authentication if (baseTest.isResultsReady()) { logger.info("results are ready, no auth necessary"); return AuthType.NONE; } // look for all variations of login form String basicLoginFormId = baseTest.getProperty(PROP_BASIC_LOGINFORMID); String oauth10LoginFormId = baseTest.getProperty(PROP_OAUTH10_LOGINFORMID); String[] loginFormIds = { basicLoginFormId, oauth10LoginFormId }; String oauth20LoginFormXPath = baseTest.getProperty(PROP_OAUTH20_LOGINFORMXPATH); String[] loginFormXPathExprs = { oauth20LoginFormXPath }; if (loginForm != null) { String loginFormId = loginForm.getAttribute("id"); if (basicLoginFormId.equals(loginFormId)) { return AuthType.BASIC; } else if (oauth10LoginFormId.equals(loginFormId)) { return AuthType.OAUTH10; } else { // TODO handle multiple login form xpath exprs return AuthType.OAUTH20; } } return AuthType.NONE; }