]
Lukáš Fryč resolved ARQGRA-280.
-------------------------------
Resolution: Deferred
Fix Version/s: (was: 2.1-Tracking)
Refactor handling of staleness to improve performance
-----------------------------------------------------
Key: ARQGRA-280
URL:
https://issues.jboss.org/browse/ARQGRA-280
Project: Arquillian Graphene
Issue Type: Task
Affects Versions: 2.0.0.Alpha3
Reporter: Jan Papousek
Original Estimate: 4 hours
Remaining Estimate: 4 hours
The current situation of handling staleness is it works purely accidentally in some cases
and it prevents any caching of web elements.
Imagine the following code:
{code}
Action action = new Actions(driver).moveToElement(element).build();
... // some action causing staleness
action.perform();
{code}
The previous code doesn't throw StaleElementReferenceException only in the case when
the action causing staleness finishes before the requested action starts performing and
when there is no caching of web elements. Currently Graphene can't force the action to
perform again when StaleElementReferenceException is thrown.
In the case of caching the scenerio would be:
# element is loaded and put to the cache
# ... some actions ...
# action causing staleness is performed
# the requested action starts performing
-- cached element is used => StaleElementReferenceException