Package

org.pageobject.core

api

Permalink

package api

Visibility
  1. Public
  2. All

Type Members

  1. abstract class AbstractSel extends Element with FixedTagName

    Permalink
  2. case class Button(factory: ElementFactory) extends Element with FixedTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    button("q").value should be ("Cheese!")
    

    factory

    the ElementFactory representing

  3. case class ButtonLocator(query: Query, reference: PageReference) extends Locator[Button] with Product with Serializable

    Permalink
  4. case class Checkbox(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    checkbox("cbx1").select()
    

    factory

    the ElementFactory representing a checkbox

  5. case class CheckboxLocator(query: Query, reference: PageReference) extends Locator[Checkbox] with Product with Serializable

    Permalink
  6. case class ClassNameQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    A class name query.

    A class name query.

    This class enables syntax such as the following:

    click on className("???")
    ^
    

    queryString

    the query string for this query.

  7. case class ColorField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    colorField("q").value should be ("Cheese!")
    

    factory

    the ElementFactory representing a color field

  8. case class ColorFieldLocator(query: Query, reference: PageReference) extends Locator[ColorField] with Product with Serializable

    Permalink
  9. case class CssSelectorQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    A CSS selector query.

    A CSS selector query.

    This class enables syntax such as the following:

    click on cssSelector("???")
    ^
    

    queryString

    the query string for this query.

  10. case class DateField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    dateField("q").value should be ("2003-03-01")
    

    factory

    the ElementFactory representing a date field

  11. case class DateFieldLocator(query: Query, reference: PageReference) extends Locator[DateField] with Product with Serializable

    Permalink
  12. case class DateTimeField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    dateTimeField("q").value should be ("2003-03-01T12:13:14")
    

    factory

    the ElementFactory representing a datetime field

  13. case class DateTimeFieldLocator(query: Query, reference: PageReference) extends Locator[DateTimeField] with Product with Serializable

    Permalink
  14. case class DateTimeLocalField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    dateTimeLocalField("q").value should be ("2003-03-01T12:13:14")
    

    factory

    the ElementFactory representing a datetime-local field

  15. case class DateTimeLocalFieldLocator(query: Query, reference: PageReference) extends Locator[DateTimeLocalField] with Product with Serializable

    Permalink
  16. abstract class Element extends Logging with WaitFor with ScriptDsl

    Permalink

    Wrapper class for a Selenium WebElement.

    Wrapper class for a Selenium WebElement. This class provides all possibilities on a WebElement which are also provided by Selenium. That contains information about the WebElement like its size, location or css style but also all user interactions like clicking, filling, submitting etc.

    Apart from that there is a special WebElement class for a lot of different types of elements (the most common ones). If you are sure about the element type you want to access, you could use the approtiate case class like DateTimeField or TextField. Using these the locator of the element not only identifies it but also checks if the element's type is as expected. If you're unsure or your web site changes regularly, you could also use UntypedElement. In that case the check if the element found matches the expected type is left out.

    This class provides idiomatic Scala access to the services of an underlying WebElement. You can access the wrapped WebElement via the underlying method.

  17. case class ElementFactory(initial: WebElement, retry: () ⇒ WebElement)(implicit webDriver: WebDriver) extends Product with Serializable

    Permalink
  18. case class EmailField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    emailField("q").value should be ("[email protected]")
    

    factory

    the ElementFactory representing a email field

  19. case class EmailFieldLocator(query: Query, reference: PageReference) extends Locator[EmailField] with Product with Serializable

    Permalink
  20. trait FixedTagName extends AnyRef

    Permalink

    The tag name is readonly according to W3C specification.

    The tag name is readonly according to W3C specification.

    You can use this trait to prevent calling underlying.getTagName if you already know the tag name.

  21. case class HtmlElement(fixedTagName: String)(factory: ElementFactory) extends Element with FixedTagName with Product with Serializable

    Permalink
  22. case class HtmlLocator(tag: String, query: Query, reference: PageReference) extends Locator[HtmlElement] with Product with Serializable

    Permalink
  23. case class IdOrNameQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    An ID query.

    An ID query.

    This class enables syntax such as the following:

    click on id("q")
    ^
    

    queryString

    the query string for this query.

  24. case class IdQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    An ID query.

    An ID query.

    This class enables syntax such as the following:

    click on id("q")
    ^
    

    queryString

    the query string for this query.

  25. trait ImplicitClassNameQuery extends AnyRef

    Permalink
  26. trait ImplicitCssSelectorQuery extends AnyRef

    Permalink
  27. trait ImplicitIdOrNameQuery extends AnyRef

    Permalink
  28. trait ImplicitIdQuery extends AnyRef

    Permalink
  29. trait ImplicitLinkTextQuery extends AnyRef

    Permalink
  30. trait ImplicitNameQuery extends AnyRef

    Permalink
  31. trait ImplicitPartialLinkTextQuery extends AnyRef

    Permalink
  32. trait ImplicitTagNameQuery extends AnyRef

    Permalink
  33. trait ImplicitXPathQuery extends AnyRef

    Permalink
  34. trait InputTagName extends FixedTagName

    Permalink
  35. case class LinkTextQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    A link text query.

    A link text query.

    This class enables syntax such as the following:

    click on linkText("???")
    ^
    

    queryString

    the query string for this query.

  36. abstract class Locator[E <: Element] extends DriverProvider with WaitFor

    Permalink

    The Locator locates an Element due to a Query.

    The Locator locates an Element due to a Query. If used there is either the possibility to get exactly 1 element. In this case the element: E function should be called. If more than 1 element has to be found (like a list of li items) the elements: Seq[E] function should be called.

    E

    the type of Elements to locate

  37. case class MonthField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    monthField("q").value should be ("2003-04")
    

    factory

    the ElementFactory representing a month field

  38. case class MonthFieldLocator(query: Query, reference: PageReference) extends Locator[MonthField] with Product with Serializable

    Permalink
  39. case class MultiSel(factory: ElementFactory) extends AbstractSel with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    multiSel("select2").clear("option5")
    

    factory

    the ElementFactory representing a multiple selection list

  40. case class MultiSelLocator(query: Query, reference: PageReference) extends Locator[MultiSel] with Product with Serializable

    Permalink
  41. class MultiSelOptionSeq extends IndexedSeq[String]

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    multiSel("select2").values += "option5"
    ^
    

    Instances of this class are returned from the values method of MultiSel. MultiSelOptionSeq is an immutable IndexedSeq[String] that wraps an underlying immutable IndexedSeq[String] and adds two methods, + and -, to facilitate the += syntax for setting additional options of the MultiSel.

    The Scala compiler will rewrite:

    multiSel("select2").values += "option5"
    

    To:

    multiSel("select2").values = multiSel("select2").values + "option5"
    

    Thus, first a new MultiSelOptionSeq is created by invoking the + method on the MultiSelOptionSeq returned by values, and that result is passed to the values_= method.

    For symmetry, this class also offers a - method, which can be used to deselect an option, like this:

    multiSel("select2").values -= "option5"
    ^
    

  42. case class NameQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    A name query.

    A name query.

    This class enables syntax such as the following:

    click on name("q")
    ^
    

    queryString

    the query string for this query.

  43. case class NumberField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    numberField("q").value should be ("1.3")
    

    factory

    the ElementFactory representing a number field

  44. case class NumberFieldLocator(query: Query, reference: PageReference) extends Locator[NumberField] with Product with Serializable

    Permalink
  45. case class PartialLinkTextQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    A partial link text query.

    A partial link text query.

    This class enables syntax such as the following:

    click on partialLinkText("???")
    ^
    

    queryString

    the query string for this query.

  46. case class PasswordField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    pwdField("q").value should be ("Cheese!")
    

    factory

    the ElementFactory representing a password field

  47. case class PasswordFieldLocator(query: Query, reference: PageReference) extends Locator[PasswordField] with Product with Serializable

    Permalink
  48. trait QaTagDsl extends AnyRef

    Permalink

    A Custom QueryDsl Example.

    A Custom QueryDsl Example.

    Example:   case class Tour03GoogleSearchPage() extends PageObject {     object content extends PageModule with QaTagDsl {       private val example = textField(qaTag("exampleQaTag"))       private val list = textField(qaTag("li", "exampleQaTag"))     }   }

  49. case class QaTagQuery(prefix: String, qaTag: String) extends Query with Product with Serializable

    Permalink

    A Custom Query Example.

    A Custom Query Example.

    This is a simple example on how to implement a custom query

  50. trait Query extends AnyRef

    Permalink

    This trait is part of the PageObject DSL.

    This trait is part of the PageObject DSL.

    Subclasses of this trait define different ways of querying for elements, enabling syntax such as the following:

    click on id("q")
    ^
    

  51. case class RadioButton(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    radioButton(id("opt1")).value should be ("Option 1!")
    

    factory

    the ElementFactory representing a text area

  52. case class RadioButtonGroup(groupName: String, driver: WebDriver) extends DefaultPageReference with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    radioButtonGroup("group1").value should be ("Option 2")
    

  53. case class RadioButtonLocator(query: Query, reference: PageReference) extends Locator[RadioButton] with Product with Serializable

    Permalink
  54. case class RangeField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    rangeField("q").value should be ("1.3")
    

    factory

    the ElementFactory representing a range field

  55. case class RangeFieldLocator(query: Query, reference: PageReference) extends Locator[RangeField] with Product with Serializable

    Permalink
  56. case class SearchField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    searchField("q").value should be ("google")
    

    factory

    the ElementFactory representing a search field

  57. case class SearchFieldLocator(query: Query, reference: PageReference) extends Locator[SearchField] with Product with Serializable

    Permalink
  58. case class SingleSel(factory: ElementFactory) extends AbstractSel with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    singleSel.clear()
    

    factory

    the ElementFactory representing a single selection list

  59. case class SingleSelLocator(query: Query, reference: PageReference) extends Locator[SingleSel] with Product with Serializable

    Permalink
  60. case class TagNameQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    A tag name query.

    A tag name query.

    This class enables syntax such as the following:

    click on tagName("???")
    ^
    

    queryString

    the query string for this query.

  61. case class TelField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    telField("q").value should be ("911-911-9191")
    

    factory

    the ElementFactory representing a tel field

  62. case class TelFieldLocator(query: Query, reference: PageReference) extends Locator[TelField] with Product with Serializable

    Permalink
  63. case class TextArea(factory: ElementFactory) extends Element with FixedTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    textArea("q").value should be ("Cheese!")
    

    factory

    the ElementFactory representing a text area

  64. case class TextAreaLocator(query: Query, reference: PageReference) extends Locator[TextArea] with Product with Serializable

    Permalink
  65. case class TextField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    textField("q").value should be ("Cheese!")
    

    factory

    the ElementFactory representing a text field

  66. case class TextFieldLocator(query: Query, reference: PageReference) extends Locator[TextField] with Product with Serializable

    Permalink
  67. case class TimeField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    timeField("q").value should be ("12:13:14")
    

    factory

    the ElementFactory representing a time field

  68. case class TimeFieldLocator(query: Query, reference: PageReference) extends Locator[TimeField] with Product with Serializable

    Permalink
  69. case class UntypedElement(factory: ElementFactory) extends Element with Product with Serializable

    Permalink
  70. case class UntypedLocator(query: Query, reference: PageReference) extends Locator[UntypedElement] with Product with Serializable

    Permalink
  71. case class UrlField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    urlField("q").value should be ("http://google.com")
    

    factory

    the ElementFactory representing a url field

  72. case class UrlFieldLocator(query: Query, reference: PageReference) extends Locator[UrlField] with Product with Serializable

    Permalink
  73. case class WeekField(factory: ElementFactory) extends Element with InputTagName with Product with Serializable

    Permalink

    This class is part of the PageObject DSL.

    This class is part of the PageObject DSL.

    This class enables syntax such as the following:

    weekField("q").value should be ("1996-W16")
    

    factory

    the ElementFactory representing a week field

  74. case class WeekFieldLocator(query: Query, reference: PageReference) extends Locator[WeekField] with Product with Serializable

    Permalink
  75. case class XPathQuery(queryString: String) extends Query with Product with Serializable

    Permalink

    An XPath query.

    An XPath query.

    This class enables syntax such as the following:

    click on xpath("???")
    ^
    

    queryString

    the query string for this query.

Value Members

  1. object ElementFactory extends Serializable

    Permalink
  2. object Locator extends WaitFor

    Permalink

Ungrouped