Package com.qaprosoft.carina.core.gui
Class AbstractUIObject
- java.lang.Object
-
- com.qaprosoft.carina.core.foundation.webdriver.DriverHelper
-
- com.qaprosoft.carina.core.gui.AbstractUIObject
-
- Direct Known Subclasses:
AbstractPage
,AbstractScreen
public abstract class AbstractUIObject extends DriverHelper
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String
name
protected org.openqa.selenium.By
rootBy
protected org.openqa.selenium.WebElement
rootElement
protected ExtendedWebElement
uiLoadedMarker
-
Fields inherited from class com.qaprosoft.carina.core.foundation.webdriver.DriverHelper
CRYPTO_PATTERN, cryptoTool, driver, EXPLICIT_TIMEOUT, RETRY_TIME, SHORT_TIMEOUT, timer
-
-
Constructor Summary
Constructors Constructor Description AbstractUIObject(org.openqa.selenium.WebDriver driver)
Initializes UI object usingPageFactory
.AbstractUIObject(org.openqa.selenium.WebDriver driver, org.openqa.selenium.SearchContext searchContext)
Initializes UI object usingPageFactory
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
assertUIObjectNotPresent()
Checks missing of UIObject root element on the page and throws Assertion error in case if it presentsvoid
assertUIObjectNotPresent(long timeout)
Checks missing of UIObject root element on the page and throws Assertion error in case if it presentsvoid
assertUIObjectPresent()
Checks presence of UIObject root element on the page and throws Assertion error in case if it's missingvoid
assertUIObjectPresent(long timeout)
Checks presence of UIObject root element on the page and throws Assertion error in case if it's missingElementLoadingStrategy
getLoadingStrategy()
java.lang.String
getName()
org.openqa.selenium.By
getRootBy()
org.openqa.selenium.WebElement
getRootElement()
ExtendedWebElement
getUiLoadedMarker()
boolean
isUIObjectPresent()
boolean
isUIObjectPresent(long timeout)
Verifies if rootWebElement
presents on page.void
setLoadingStrategy(ElementLoadingStrategy loadingStrategy)
void
setName(java.lang.String name)
void
setRootBy(org.openqa.selenium.By rootBy)
void
setRootElement(org.openqa.selenium.WebElement element)
void
setUiLoadedMarker(ExtendedWebElement uiLoadedMarker)
-
Methods inherited from class com.qaprosoft.carina.core.foundation.webdriver.DriverHelper
acceptAlert, allElementListsAreNotEmpty, allElementListsAreNotEmpty, allElementsPresent, allElementsPresent, assertElementPresent, assertElementPresent, assertElementWithTextPresent, assertElementWithTextPresent, cancelAlert, clickAny, clickAny, dragAndDrop, dragAndDropHtml5, findExtendedWebElement, findExtendedWebElement, findExtendedWebElement, findExtendedWebElement, findExtendedWebElements, findExtendedWebElements, getDriver, isAlertPresent, isAnyElementPresent, isAnyElementPresent, isElementNotPresent, isElementNotPresent, isElementNotPresent, isElementWithTextPresent, isElementWithTextPresent, isPageOpened, isPageOpened, isTitleAsExpected, isTitleAsExpectedPattern, isUrlAsExpected, navigateBack, openTab, openURL, pause, pause, performIgnoreException, pressTab, refresh, refresh, returnAnyPresentElement, returnAnyPresentElement, setDriver, slide, switchWindow, trigger, trigger, waitUntil
-
-
-
-
Field Detail
-
name
protected java.lang.String name
-
rootElement
protected org.openqa.selenium.WebElement rootElement
-
rootBy
protected org.openqa.selenium.By rootBy
-
uiLoadedMarker
protected ExtendedWebElement uiLoadedMarker
-
-
Constructor Detail
-
AbstractUIObject
public AbstractUIObject(org.openqa.selenium.WebDriver driver)
Initializes UI object usingPageFactory
. Whole browser window is used as search context- Parameters:
driver
- WebDriver
-
AbstractUIObject
public AbstractUIObject(org.openqa.selenium.WebDriver driver, org.openqa.selenium.SearchContext searchContext)
Initializes UI object usingPageFactory
. Browser area for internal elements initialization is bordered by SearchContext instance. IfWebDriver
object is used as search context then whole browser window will be used for initialization ofExtendedWebElement
fields inside. Note: implement this constructor if you want yourAbstractUIObject
instances marked withFindBy
to be auto-initialized onAbstractPage
inheritors- Parameters:
driver
- WebDriver instance to initialize UI Object fields using PageFactorysearchContext
- Window area that will be used for locating of internal elements
-
-
Method Detail
-
isUIObjectPresent
public boolean isUIObjectPresent(long timeout)
Verifies if rootWebElement
presents on page. IfAbstractUIObject
field onAbstractPage
is marked withFindBy
annotation then this locator will be used to instantiate rootElement- Parameters:
timeout
- - max timeout for waiting until rootElement appear- Returns:
- true - if rootElement is enabled and visible on browser's screen; false - otherwise
-
isUIObjectPresent
public boolean isUIObjectPresent()
-
getUiLoadedMarker
public ExtendedWebElement getUiLoadedMarker()
-
setUiLoadedMarker
public void setUiLoadedMarker(ExtendedWebElement uiLoadedMarker)
-
getLoadingStrategy
public ElementLoadingStrategy getLoadingStrategy()
-
setLoadingStrategy
public void setLoadingStrategy(ElementLoadingStrategy loadingStrategy)
-
getName
public java.lang.String getName()
-
setName
public void setName(java.lang.String name)
-
getRootElement
public org.openqa.selenium.WebElement getRootElement()
-
setRootElement
public void setRootElement(org.openqa.selenium.WebElement element)
-
getRootBy
public org.openqa.selenium.By getRootBy()
-
setRootBy
public void setRootBy(org.openqa.selenium.By rootBy)
-
assertUIObjectPresent
public void assertUIObjectPresent()
Checks presence of UIObject root element on the page and throws Assertion error in case if it's missing
-
assertUIObjectPresent
public void assertUIObjectPresent(long timeout)
Checks presence of UIObject root element on the page and throws Assertion error in case if it's missing- Parameters:
timeout
- long
-
assertUIObjectNotPresent
public void assertUIObjectNotPresent()
Checks missing of UIObject root element on the page and throws Assertion error in case if it presents
-
assertUIObjectNotPresent
public void assertUIObjectNotPresent(long timeout)
Checks missing of UIObject root element on the page and throws Assertion error in case if it presents- Parameters:
timeout
- long
-
-