List of usage examples for org.openqa.selenium By partialLinkText
public static By partialLinkText(String partialLinkText)
From source file:org.ops4j.pax.shiro.itest.osgi.Jetty9FacesBundleTest.java
License:Apache License
@Test public void shouldNotRememberMeWithoutCookie() throws Exception { webDriver.get(getBaseUri() + "login.jsf"); webDriver.findElement(By.name("login:username")).sendKeys("root"); webDriver.findElement(By.name("login:password")).sendKeys("secret"); webDriver.findElement(By.name("login:rememberMe")).click(); webDriver.findElement(By.name("login:submit")).click(); Cookie cookie = webDriver.manage().getCookieNamed("rememberMe"); assertThat(cookie, is(notNullValue())); webDriver.close();/* ww w . java2s. co m*/ webDriver = new HtmlUnitDriver(); webDriver.get(getBaseUri()); thrown.expect(NoSuchElementException.class); webDriver.findElement(By.partialLinkText("Log out")); }
From source file:org.ops4j.pax.shiro.test.AbstractHtmlUnitContainerTest.java
License:Apache License
@Before public void logOut() throws IOException { // Make sure we are logged out webDriver.get(getBaseUri());/*from www . j a v a 2 s. c o m*/ try { webDriver.findElement(By.partialLinkText("Log out")).click(); } catch (NoSuchElementException e) { //Ignore } }
From source file:org.ops4j.pax.shiro.test.HtmlUnitFacesTest.java
License:Apache License
@Test public void logIn() { logIn("root", "secret"); // This'll throw an expection if not logged in webDriver.findElement(By.partialLinkText("Log out")); }
From source file:org.ops4j.pax.shiro.test.HtmlUnitFacesTest.java
License:Apache License
@Test public void shouldRememberMeOnServerRestart() throws Exception { webDriver.get(getBaseUri() + "login.jsf"); webDriver.findElement(By.name("login:username")).sendKeys("root"); webDriver.findElement(By.name("login:password")).sendKeys("secret"); webDriver.findElement(By.name("login:rememberMe")).click(); webDriver.findElement(By.name("login:submit")).click(); server.stop();//ww w . j a v a2 s .c o m server.start(); webDriver.get(getBaseUri()); webDriver.findElement(By.partialLinkText("Log out")); webDriver.findElement(By.partialLinkText("account")).click(); // login page should be shown again - user remembered but not authenticated webDriver.findElement(By.name("login:username")); }
From source file:org.paxml.selenium.webdriver.SelectableTag.java
License:Open Source License
public void setSelector(String selector) { this.selector = selector; if (selector.startsWith("id:")) { by = By.id(selector.substring(3)); } else if (selector.startsWith("xpath:")) { by = By.xpath(selector.substring(6)); } else if (selector.startsWith("text:")) { by = By.xpath("//*[text()='" + selector.substring(5) + "']"); } else if (selector.startsWith("css:")) { by = By.cssSelector(selector.substring(4)); } else if (selector.startsWith("className:")) { by = By.className(selector.substring(10)); } else if (selector.startsWith("name:")) { by = By.name(selector.substring(5)); } else if (selector.startsWith("tag:")) { by = By.tagName(selector.substring(4)); } else if (selector.startsWith("linkText:")) { by = By.linkText(selector.substring(9)); } else if (selector.startsWith("partialLinkText:")) { by = By.partialLinkText(selector.substring(16)); } else if (selector.startsWith("javascript:")) { setJavascriptSelector(selector.substring(3)); } else {// www. j a v a2 s . c om // make a jQuery call that returns array, requires jQuery 1.4+ String js = "return $('" + selector + "').toArray()"; setJavascriptSelector(js); } }
From source file:org.planotius.controller.functions.FindBy.java
public WebElement partialLinkText(String value) { WebElement element = null;/*from w ww . j a va 2s. co m*/ try { element = driver.findElement(By.partialLinkText(value)); } catch (NoSuchElementException nse) { return null; } return element; }
From source file:org.powertools.web.WebDriverBrowser.java
License:Open Source License
@Override public boolean clickLink(String text) { return click(By.partialLinkText(text)); }
From source file:org.powertools.web.WebDriverBrowser.java
License:Open Source License
private By getLocator(Item item) { if (item.mType != ItemType.cLink) { // continue } else if (item.mKeyType == KeyType.cText) { By locator = By.linkText(item.mValue); mRunTime.reportInfo("locator: " + locator.toString()); return locator; } else if (item.mKeyType == KeyType.cPartialText) { By locator = By.partialLinkText(item.mValue); mRunTime.reportInfo("locator: " + locator.toString()); return locator; }// w w w . ja v a2 s .c om return getLocator(item.mKeyType, item.getValue()); }
From source file:org.safs.selenium.webdriver.lib.SearchObject.java
License:Open Source License
/** * According to pair(qualifier, value), find the matched WebElement.<br> * Some qualifiers like "ID", can determine the WebElement uniquely and result<br> * only one WebElement; Other qualifiers may result several WebElement, the first<br> * one will be returned.<br>//from w ww.j a v a2 s . c om * * @param sc SearchContext, the search context, it is normally a WebElement. * @param qualifier String, the qualifier like xpath, css, id, name, link etc. * @param value String, the value of a qualifier. * @return SearchContext, the WebElment found according to qualifier and its value. * @throws SeleniumPlusException */ protected static SearchContext getObjectByQualifier(SearchContext sc, String qualifier, String value) throws SeleniumPlusException { SearchContext result = null; String qualifierUC = null; if (qualifier == null) { throw new SeleniumPlusException("ignore null qualifier."); } else { qualifierUC = qualifier.toUpperCase(); } try { if (SEARCH_CRITERIA_XPATH.equals(qualifierUC)) { result = sc.findElement(By.xpath(value)); } else if (SEARCH_CRITERIA_CSS.equals(qualifierUC)) { result = sc.findElement(By.cssSelector(value)); } else if (SEARCH_CRITERIA_TAG.equals(qualifierUC)) { result = sc.findElement(By.tagName(value)); } else { boolean partialMatch = qualifierUC.endsWith(SEARCH_CRITERIA_CONTAINS_SUFFIX); //The following qualifiers will support suffix "Contains": //idContains, classContains, nameContains, linkContains, textContains, titleContains, iframeidContains if (SEARCH_CRITERIA_ID.equals(qualifierUC)) { result = sc.findElement(By.id(value)); } else if (SEARCH_CRITERIA_CLASS.equals(qualifierUC)) { result = sc.findElement(By.className(value)); } else if (SEARCH_CRITERIA_NAME.equals(qualifierUC)) { result = sc.findElement(By.name(value)); } else if (SEARCH_CRITERIA_LINK.equals(qualifierUC)) { result = sc.findElement(By.linkText(value)); } else if (SEARCH_CRITERIA_PARTIALLINK.equals(qualifierUC) || (SEARCH_CRITERIA_LINK + SEARCH_CRITERIA_CONTAINS_SUFFIX).equals(qualifierUC)) { result = sc.findElement(By.partialLinkText(value)); } else if (qualifierUC.startsWith(SEARCH_CRITERIA_TEXT)) { result = getObjectByText(sc, value, partialMatch); } else if (qualifierUC.startsWith(SEARCH_CRITERIA_TITLE)) { result = getObjectByTitle(sc, value, partialMatch); } else if (qualifierUC.startsWith(SEARCH_CRITERIA_IFRAMEID)) { result = sc .findElement(By.xpath("//iframe[" + XPATH.condition("id", value, partialMatch) + "]")); } else if (partialMatch) { //idContains, classContains, nameContains will be supported here. result = sc.findElement(By.xpath(XPATH.RELATIVE_MATCHING_ALL_START + XPATH.conditionContains(qualifier, value) + XPATH.END)); } else { throw new SeleniumPlusException( "ignore unknown qualifier '" + qualifierUC + "', value='" + value + "'"); } } } catch (Exception e) { if (e instanceof SeleniumPlusException) throw (SeleniumPlusException) e; IndependantLog.error(StringUtils.debugmsg(false) + " met " + StringUtils.debugmsg(e)); } return result; }
From source file:org.safs.selenium.webdriver.lib.SearchObject.java
License:Open Source License
/** * According to pair(qualifier, value), find all matching WebElements.<br> * Some qualifiers like "ID", can determine the WebElement uniquely and result<br> * only one WebElement; Other qualifiers may result in several WebElements.<br> * * @param sc SearchContext, the search context, it is normally a WebElement. * @param qualifier String, the qualifier like xpath, css, id, name, link etc. * @param value String, the value of a qualifier. * @return List<WebElement> 0 or more * @throws SeleniumPlusException/* ww w .j a va 2 s . c o m*/ */ protected static List<WebElement> getObjectsByQualifier(SearchContext sc, String qualifier, String value) throws SeleniumPlusException { List<WebElement> result = new ArrayList<WebElement>(); ; String qualifierUC = null; if (qualifier == null) { throw new SeleniumPlusException("ignore null qualifier."); } else { qualifierUC = qualifier.toUpperCase(); } try { if (SEARCH_CRITERIA_XPATH.equals(qualifierUC)) { result = sc.findElements(By.xpath(value)); } else if (SEARCH_CRITERIA_CSS.equals(qualifierUC)) { result = sc.findElements(By.cssSelector(value)); } else if (SEARCH_CRITERIA_TAG.equals(qualifierUC)) { result = sc.findElements(By.tagName(value)); } else { boolean partialMatch = qualifierUC.endsWith(SEARCH_CRITERIA_CONTAINS_SUFFIX); //The following qualifiers will support suffix "Contains": //idContains, classContains, nameContains, linkContains, textContains, titleContains, iframeidContains if (SEARCH_CRITERIA_ID.equals(qualifierUC)) { result = sc.findElements(By.id(value)); } else if (SEARCH_CRITERIA_CLASS.equals(qualifierUC)) { result = sc.findElements(By.className(value)); } else if (SEARCH_CRITERIA_NAME.equals(qualifierUC)) { result = sc.findElements(By.name(value)); } else if (SEARCH_CRITERIA_LINK.equals(qualifierUC)) { result = sc.findElements(By.linkText(value)); } else if (SEARCH_CRITERIA_PARTIALLINK.equals(qualifierUC) || (SEARCH_CRITERIA_LINK + SEARCH_CRITERIA_CONTAINS_SUFFIX).equals(qualifierUC)) { result = sc.findElements(By.partialLinkText(value)); } else if (qualifierUC.startsWith(SEARCH_CRITERIA_TEXT)) { result = getObjectsByText(sc, value, partialMatch); } else if (qualifierUC.startsWith(SEARCH_CRITERIA_TITLE)) { result = getObjectsByTitle(sc, value, partialMatch); } else if (qualifierUC.startsWith(SEARCH_CRITERIA_IFRAMEID)) { result = sc .findElements(By.xpath("//iframe[" + XPATH.condition("id", value, partialMatch) + "]")); } else if (partialMatch) { //idContains, classContains, nameContains will be supported here. result = sc.findElements(By.xpath(XPATH.RELATIVE_MATCHING_ALL_START + XPATH.conditionContains(qualifier, value) + XPATH.END)); } else { throw new SeleniumPlusException( "ignore unknown qualifier '" + qualifierUC + "', value='" + value + "'"); } } } catch (Exception e) { if (e instanceof SeleniumPlusException) throw (SeleniumPlusException) e; IndependantLog.error(StringUtils.debugmsg(false) + " met " + StringUtils.debugmsg(e)); } return result; }