| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <title>EarlGrey Reference</title> |
| <link rel="stylesheet" type="text/css" href="css/jazzy.css" /> |
| <link rel="stylesheet" type="text/css" href="css/highlight.css" /> |
| <meta charset='utf-8'> |
| <script src="js/jquery.min.js" defer></script> |
| <script src="js/jazzy.js" defer></script> |
| |
| </head> |
| <body> |
| <a title="EarlGrey Reference"></a> |
| <header> |
| <div class="content-wrapper"> |
| <p><a href="index.html">EarlGrey Docs</a> (100% documented)</p> |
| <p class="header-right"><a href="https://github.com/google/EarlGrey"><img src="img/gh.png"/>View on GitHub</a></p> |
| </div> |
| </header> |
| <div class="content-wrapper"> |
| <p id="breadcrumbs"> |
| <a href="index.html">EarlGrey Reference</a> |
| <img id="carat" src="img/carat.png" /> |
| EarlGrey Reference |
| </p> |
| </div> |
| <div class="content-wrapper"> |
| <nav class="sidebar"> |
| <ul class="nav-groups"> |
| <li class="nav-group-name"> |
| <a href="Classes.html">Classes</a> |
| <ul class="nav-group-tasks"> |
| <li class="nav-group-task"> |
| <a href="Classes/EarlGreyImpl.html">EarlGreyImpl</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYActionBlock.html">GREYActionBlock</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYActions.html">GREYActions</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYAllOf.html">GREYAllOf</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYAnyOf.html">GREYAnyOf</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYAssertionBlock.html">GREYAssertionBlock</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes.html#/c:objc(cs)GREYAssertions">GREYAssertions</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYBaseAction.html">GREYBaseAction</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYBaseMatcher.html">GREYBaseMatcher</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYCondition.html">GREYCondition</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYConfiguration.html">GREYConfiguration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYConstants.html">GREYConstants</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYDataEnumerator.html">GREYDataEnumerator</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYDispatchQueueIdlingResource.html">GREYDispatchQueueIdlingResource</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYElementFinder.html">GREYElementFinder</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYElementHierarchy.html">GREYElementHierarchy</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYElementInteraction.html">GREYElementInteraction</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYElementMatcherBlock.html">GREYElementMatcherBlock</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYFrameworkException.html">GREYFrameworkException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYLayoutConstraint.html">GREYLayoutConstraint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYManagedObjectContextIdlingResource.html">GREYManagedObjectContextIdlingResource</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYMatchers.html">GREYMatchers</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYNSTimerIdlingResource.html">GREYNSTimerIdlingResource</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYNot.html">GREYNot</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYOperationQueueIdlingResource.html">GREYOperationQueueIdlingResource</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYScreenshotUtil.html">GREYScreenshotUtil</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYTestHelper.html">GREYTestHelper</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Classes/GREYUIThreadExecutor.html">GREYUIThreadExecutor</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-group-name"> |
| <a href="Constants.html">Constants</a> |
| <ul class="nav-group-tasks"> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYAcceptableFloatDifference">kGREYAcceptableFloatDifference</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYActionElementUserInfoKey">kGREYActionElementUserInfoKey</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYActionErrorUserInfoKey">kGREYActionErrorUserInfoKey</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYActionFailedException">kGREYActionFailedException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYActionUserInfoKey">kGREYActionUserInfoKey</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYAllowVerboseLogging">kGREYAllowVerboseLogging</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYAssertionElementUserInfoKey">kGREYAssertionElementUserInfoKey</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYAssertionErrorUserInfoKey">kGREYAssertionErrorUserInfoKey</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYAssertionFailedException">kGREYAssertionFailedException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYAssertionUserInfoKey">kGREYAssertionUserInfoKey</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyActionConstraintsEnabled">kGREYConfigKeyActionConstraintsEnabled</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyAnalyticsEnabled">kGREYConfigKeyAnalyticsEnabled</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyArtifactsDirLocation">kGREYConfigKeyArtifactsDirLocation</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyCALayerMaxAnimationDuration">kGREYConfigKeyCALayerMaxAnimationDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyCALayerModifyAnimations">kGREYConfigKeyCALayerModifyAnimations</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyDelayedPerformMaxTrackableDuration">kGREYConfigKeyDelayedPerformMaxTrackableDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyDispatchAfterMaxTrackableDelay">kGREYConfigKeyDispatchAfterMaxTrackableDelay</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyIncludeStatusBarWindow">kGREYConfigKeyIncludeStatusBarWindow</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyInteractionTimeoutDuration">kGREYConfigKeyInteractionTimeoutDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyNSTimerMaxTrackableInterval">kGREYConfigKeyNSTimerMaxTrackableInterval</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeySynchronizationEnabled">kGREYConfigKeySynchronizationEnabled</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConfigKeyURLBlacklistRegex">kGREYConfigKeyURLBlacklistRegex</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYConstraintFailedException">kGREYConstraintFailedException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYDidPerformActionNotification">kGREYDidPerformActionNotification</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYDidPerformAssertionNotification">kGREYDidPerformAssertionNotification</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYFailureHandlerKey">kGREYFailureHandlerKey</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYGenericFailureException">kGREYGenericFailureException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYInfiniteTimeout">kGREYInfiniteTimeout</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYInteractionErrorDomain">kGREYInteractionErrorDomain</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYKeyboardDismissalErrorDomain">kGREYKeyboardDismissalErrorDomain</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYLongPressDefaultDuration">kGREYLongPressDefaultDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYMinimumVisibleAlpha">kGREYMinimumVisibleAlpha</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYMultipleElementsFoundException">kGREYMultipleElementsFoundException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYNilException">kGREYNilException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYNoMatchingElementException">kGREYNoMatchingElementException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYNotNilException">kGREYNotNilException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYPinchAngleDefault">kGREYPinchAngleDefault</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYPinchFastDuration">kGREYPinchFastDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYPinchSlowDuration">kGREYPinchSlowDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYScrollErrorDomain">kGREYScrollErrorDomain</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYSwipeFastDuration">kGREYSwipeFastDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYSwipeSlowDuration">kGREYSwipeSlowDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYTimeoutException">kGREYTimeoutException</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYUIThreadExecutorErrorDomain">kGREYUIThreadExecutorErrorDomain</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYWillPerformActionNotification">kGREYWillPerformActionNotification</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kGREYWillPerformAssertionNotification">kGREYWillPerformAssertionNotification</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Constants.html#/c:@kUIPickerViewMaxAccessibilityViews">kUIPickerViewMaxAccessibilityViews</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-group-name"> |
| <a href="Enums.html">Enums</a> |
| <ul class="nav-group-tasks"> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYContentEdge.html">GREYContentEdge</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYDirection.html">GREYDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYInteractionErrorCode.html">GREYInteractionErrorCode</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYKeyboardDismissalErrorCode.html">GREYKeyboardDismissalErrorCode</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYLayoutAttribute.html">GREYLayoutAttribute</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYLayoutDirection.html">GREYLayoutDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYLayoutRelation.html">GREYLayoutRelation</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYPinchDirection.html">GREYPinchDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYScrollErrorCode.html">GREYScrollErrorCode</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYTapType.html">GREYTapType</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Enums/GREYUIThreadExecutorErrorCode.html">GREYUIThreadExecutorErrorCode</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-group-name"> |
| <a href="Protocols.html">Protocols</a> |
| <ul class="nav-group-tasks"> |
| <li class="nav-group-task"> |
| <a href="Protocols/GREYAction.html">GREYAction</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Protocols/GREYAssertion.html">GREYAssertion</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Protocols/GREYDescription.html">GREYDescription</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Protocols/GREYFailureHandler.html">GREYFailureHandler</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Protocols/GREYIdlingResource.html">GREYIdlingResource</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Protocols/GREYInteraction.html">GREYInteraction</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Protocols/GREYMatcher.html">GREYMatcher</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Protocols/GREYProvider.html">GREYProvider</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-group-name"> |
| <a href="Type Definitions.html">Type Definitions</a> |
| <ul class="nav-group-tasks"> |
| <li class="nav-group-task"> |
| <a href="Type Definitions.html#/c:GREYElementMatcherBlock.h@T@DescribeToBlock">DescribeToBlock</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Type Definitions.html#/c:GREYAssertionBlock.h@T@GREYCheckBlockWithError">GREYCheckBlockWithError</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Type Definitions.html#/c:GREYUIThreadExecutor.h@T@GREYExecBlock">GREYExecBlock</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Type Definitions.html#/c:GREYActionBlock.h@T@GREYPerformBlock">GREYPerformBlock</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Type Definitions.html#/c:GREYElementMatcherBlock.h@T@MatchesBlock">MatchesBlock</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-group-name"> |
| <a href="Functions.html">Functions</a> |
| <ul class="nav-group-tasks"> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@NSStringFromGREYContentEdge">NSStringFromGREYContentEdge</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@NSStringFromGREYDirection">NSStringFromGREYDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@NSStringFromGREYLayoutAttribute">NSStringFromGREYLayoutAttribute</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@NSStringFromGREYLayoutRelation">NSStringFromGREYLayoutRelation</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@NSStringFromPinchDirection">NSStringFromPinchDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@NSStringFromUIAccessibilityTraits">NSStringFromUIAccessibilityTraits</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@NSStringFromUIDeviceOrientation">NSStringFromUIDeviceOrientation</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_accessibilityElement">grey_accessibilityElement</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_accessibilityFocused">grey_accessibilityFocused</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_accessibilityHint">grey_accessibilityHint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_accessibilityID">grey_accessibilityID</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_accessibilityLabel">grey_accessibilityLabel</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_accessibilityTrait">grey_accessibilityTrait</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_accessibilityValue">grey_accessibilityValue</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_allOf">grey_allOf</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_allOfMatchers">grey_allOfMatchers</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_ancestor">grey_ancestor</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_anyOf">grey_anyOf</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_anyOfMatchers">grey_anyOfMatchers</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_anything">grey_anything</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_buttonTitle">grey_buttonTitle</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_clearText">grey_clearText</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_closeTo">grey_closeTo</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_conformsToProtocol">grey_conformsToProtocol</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_createImagePixelDataFromCGImageRef">grey_createImagePixelDataFromCGImageRef</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_datePickerValue">grey_datePickerValue</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_descendant">grey_descendant</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_doubleTap">grey_doubleTap</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_doubleTapAtPoint">grey_doubleTapAtPoint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_enabled">grey_enabled</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_equalTo">grey_equalTo</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_execute_async">grey_execute_async</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_execute_sync">grey_execute_sync</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_firstResponder">grey_firstResponder</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_getFailureHandler">grey_getFailureHandler</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_greaterThan">grey_greaterThan</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_interactable">grey_interactable</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_javaScriptExecution">grey_javaScriptExecution</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_keyWindow">grey_keyWindow</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_kindOfClass">grey_kindOfClass</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_layout">grey_layout</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_lessThan">grey_lessThan</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_longPress">grey_longPress</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_longPressAtPointWithDuration">grey_longPressAtPointWithDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_longPressWithDuration">grey_longPressWithDuration</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_minimumVisiblePercent">grey_minimumVisiblePercent</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_moveSliderToValue">grey_moveSliderToValue</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_multiFingerSwipeFastInDirection">grey_multiFingerSwipeFastInDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_multiFingerSwipeFastInDirectionWithStartPoint">grey_multiFingerSwipeFastInDirectionWithStartPoint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_multiFingerSwipeSlowInDirection">grey_multiFingerSwipeSlowInDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_multiFingerSwipeSlowInDirectionWithStartPoint">grey_multiFingerSwipeSlowInDirectionWithStartPoint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_multipleTapsWithCount">grey_multipleTapsWithCount</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_nil">grey_nil</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_not">grey_not</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_notNil">grey_notNil</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_notVisible">grey_notVisible</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_pickerColumnSetToValue">grey_pickerColumnSetToValue</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_pinchFastInDirectionAndAngle">grey_pinchFastInDirectionAndAngle</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_pinchSlowInDirectionAndAngle">grey_pinchSlowInDirectionAndAngle</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_progress">grey_progress</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_replaceText">grey_replaceText</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_respondsToSelector">grey_respondsToSelector</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_scrollInDirection">grey_scrollInDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_scrollInDirectionWithStartPoint">grey_scrollInDirectionWithStartPoint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_scrollToContentEdge">grey_scrollToContentEdge</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_scrollToContentEdgeWithStartPoint">grey_scrollToContentEdgeWithStartPoint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_scrollViewContentOffset">grey_scrollViewContentOffset</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_scrolledToContentEdge">grey_scrolledToContentEdge</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_selected">grey_selected</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_setDate">grey_setDate</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_setPickerColumnToValue">grey_setPickerColumnToValue</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_setStepperValue">grey_setStepperValue</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_sliderValueMatcher">grey_sliderValueMatcher</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_snapshot">grey_snapshot</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_stepperValue">grey_stepperValue</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_sufficientlyVisible">grey_sufficientlyVisible</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_swipeFastInDirection">grey_swipeFastInDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_swipeFastInDirectionWithStartPoint">grey_swipeFastInDirectionWithStartPoint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_swipeSlowInDirection">grey_swipeSlowInDirection</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_swipeSlowInDirectionWithStartPoint">grey_swipeSlowInDirectionWithStartPoint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_switchWithOnState">grey_switchWithOnState</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_systemAlertViewShown">grey_systemAlertViewShown</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_tap">grey_tap</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_tapAtPoint">grey_tapAtPoint</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_text">grey_text</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_textFieldValue">grey_textFieldValue</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_turnSwitchOn">grey_turnSwitchOn</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_typeText">grey_typeText</a> |
| </li> |
| <li class="nav-group-task"> |
| <a href="Functions.html#/c:@F@grey_userInteractionEnabled">grey_userInteractionEnabled</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </nav> |
| <article class="main-content"> |
| <section> |
| <section class="section"> |
| |
| <h1 id='earlgrey' class='heading'>EarlGrey</h1> |
| |
| <p><a href="https://github.com/google/EarlGrey/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-Apache%202-lightgrey.svg?style=flat" alt="Apache License"></a> |
| <a href="https://github.com/google/EarlGrey/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-CC%20BY%204.0-lightgrey.svg" alt="CC-BY 4.0 License"></a> |
| <a href="https://travis-ci.org/google/EarlGrey"><img src="https://travis-ci.org/google/EarlGrey.svg?branch=master" alt="Build Status"></a> |
| <a href="https://github.com/Carthage/Carthage"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat" alt="Carthage compatible"></a> |
| <a href="https://cocoapods.org/pods/EarlGrey"><img src="https://img.shields.io/cocoapods/v/EarlGrey.svg?maxAge=2592000" alt="CocoaPods"></a> |
| <a href="https://rubygems.org/gems/earlgrey"><img src="https://badge.fury.io/rb/earlgrey.svg" alt="Gem Version"></a></p> |
| |
| <p>EarlGrey is a native iOS UI automation test framework that enables you to write |
| clear, concise tests.</p> |
| |
| <p>With the EarlGrey framework, you have access to enhanced synchronization |
| features. EarlGrey automatically synchronizes with the UI, network requests, |
| and various queues; but still allows you to manually implement customized |
| timings, if needed.</p> |
| |
| <p>EarlGrey’s synchronization features help to ensure that the UI is in a steady |
| state before actions are performed. This greatly increases test stability and |
| makes tests highly repeatable.</p> |
| |
| <p>EarlGrey works in conjunction with the XCTest framework and integrates with |
| Xcode’s Test Navigator so you can run tests directly from Xcode or the command |
| line (using xcodebuild).</p> |
| <h2 id='getting-started' class='heading'>Getting Started</h2> |
| |
| <p>The EarlGrey documentation for users is located in the |
| <a href="https://github.com/google/EarlGrey/tree/master/docs">EarlGrey/docs</a> folder. |
| To get started, review the EarlGrey features, check for backward compatibility, |
| and then install/run EarlGrey with your test target. After everything is |
| configured, take a look at the EarlGrey API and start writing your own tests.</p> |
| |
| <ul> |
| <li><a href="https://github.com/google/EarlGrey/tree/master/docs/features.md">Features</a></li> |
| <li><a href="https://github.com/google/EarlGrey/tree/master/docs/backward-compatibility.md">Backward Compatibility</a></li> |
| <li><a href="https://github.com/google/EarlGrey/tree/master/docs/install-and-run.md">Install and Run</a></li> |
| <li><a href="https://github.com/google/EarlGrey/tree/master/docs/api.md">API</a></li> |
| <li><a href="https://github.com/google/EarlGrey/tree/master/docs/cheatsheet/cheatsheet.png">Cheat Sheet</a></li> |
| </ul> |
| <h2 id='getting-help' class='heading'>Getting Help</h2> |
| |
| <p>If you need help, several resources are available. First check the <a href="https://github.com/google/EarlGrey/tree/master/docs/faq.md">FAQ</a>. |
| If you have more questions after reading the FAQ, see <a href="https://github.com/google/EarlGrey/tree/master/docs/known-issues.md">Known Issues</a>. |
| You can bring more specific issues to our attention by asking them on |
| <a href="http://stackoverflow.com/">stackoverflow.com</a> using the <a href="http://stackoverflow.com/questions/tagged/earlgrey">#earlgrey tag</a>. |
| You can also start new discussions with us on our <a href="https://groups.google.com/forum/#!forum/earlgrey-discuss">Google group</a> |
| or request to join our <a href="https://googleoss.slack.com/messages/earlgrey">slack channel</a>.</p> |
| |
| <ul> |
| <li><a href="https://github.com/google/EarlGrey/tree/master/docs/faq.md">FAQ - Frequently Asked Questions</a></li> |
| <li><a href="https://github.com/google/EarlGrey/tree/master/docs/ifaq.md">IFAQ - Infrequently Asked Questions</a></li> |
| <li><a href="https://github.com/google/EarlGrey/tree/master/docs/known-issues.md">Known Issues</a></li> |
| <li><a href="http://stackoverflow.com/questions/tagged/earlgrey">Stack Overflow</a></li> |
| <li><a href="https://googleoss.slack.com/messages/earlgrey">Slack</a></li> |
| <li><a href="https://groups.google.com/forum/#!forum/earlgrey-discuss">Google Group</a></li> |
| </ul> |
| <h2 id='analytics' class='heading'>Analytics</h2> |
| |
| <p>To prioritize and improve EarlGrey, the framework collects usage data and |
| uploads it to Google Analytics. More specifically, the framework collects the |
| <strong>MD5 hash</strong> of <em>Bundle ID</em>, <em>Test Class Names</em> and <em>Test Method Names</em>. This |
| information allows us to measure the volume of usage. For more detailed |
| information about our analytics collection, please peruse the |
| <a href="https://github.com/google/EarlGrey/tree/master/EarlGrey/Common/GREYAnalytics.m">GREYAnalytics.m</a> |
| file which contains the implementation details. If they wish, users can choose |
| to opt out by disabling the Analytics config setting in their test’s |
| <code>- (void)setUp</code> method:</p> |
| |
| <p>In Objective-C:</p> |
| <pre class="highlight objective_c"><code><span class="c1">// Disable analytics. |
| </span><span class="p">[[</span><span class="n">GREYConfiguration</span> <span class="nf">sharedInstance</span><span class="p">]</span> <span class="nf">setValue</span><span class="p">:</span><span class="err">@</span><span class="p">(</span><span class="nb">NO</span><span class="p">)</span> <span class="nf">forConfigKey</span><span class="p">:</span><span class="n">kGREYConfigKeyAnalyticsEnabled</span><span class="p">];</span> |
| </code></pre> |
| |
| <p>In Swift:</p> |
| <pre class="highlight swift"><code><span class="c1">// Disable analytics.</span> |
| <span class="kt">GREYConfiguration</span><span class="o">.</span><span class="nf">sharedInstance</span><span class="p">()</span><span class="o">.</span><span class="nf">setValue</span><span class="p">(</span><span class="kc">false</span><span class="p">,</span> <span class="nv">forConfigKey</span><span class="p">:</span> <span class="n">kGREYConfigKeyAnalyticsEnabled</span><span class="p">)</span> |
| </code></pre> |
| <h2 id='for-contributors' class='heading'>For Contributors</h2> |
| |
| <p>Please make sure you’ve followed the guidelines in |
| <a href="https://github.com/google/EarlGrey/tree/master/CONTRIBUTING.md">CONTRIBUTING.md</a> before making any contributions.</p> |
| <h3 id='setup-an-earlgrey-project' class='heading'>Setup an EarlGrey Project</h3> |
| |
| <ol> |
| <li><p>Clone the EarlGrey repository from GitHub:</p> |
| |
| <p>git clone <a href="https://github.com/google/EarlGrey.git">https://github.com/google/EarlGrey.git</a></p></li> |
| <li><p>After you have cloned the EarlGrey repository, download all the dependencies |
| using <a href="https://github.com/google/EarlGrey/tree/master/Scripts/setup-earlgrey.sh"><strong>setup-earlgrey.sh</strong></a>.</p></li> |
| <li><p>After the script completes successfully, open <code>EarlGrey.xcodeproj</code> and ensure that all |
| the targets build.</p></li> |
| <li><p>You can now use <code>EarlGrey.xcodeproj</code> to make changes to the framework.</p></li> |
| </ol> |
| <h3 id='add-and-run-tests' class='heading'>Add and Run Tests</h3> |
| <h4 id='unit-tests' class='heading'>Unit Tests</h4> |
| |
| <p>To add unit tests for EarlGrey, use <code>UnitTests.xcodeproj</code> located at |
| <code>Tests/UnitTests</code>. To run all unit tests, select the <strong>UnitTests</strong> Scheme and press Cmd+U.</p> |
| <h4 id='functional-tests' class='heading'>Functional Tests</h4> |
| |
| <p>To add functional tests for EarlGrey, use the <code>FunctionalTests.xcodeproj</code> located |
| at <code>Tests/FunctionalTests</code>. To run all functional tests, select the <strong>FunctionalTests</strong> Scheme and press Cmd+U.</p> |
| |
| </section> |
| </section> |
| <section id="footer"> |
| <p>Copyright 2017 Google Inc.</p> |
| <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.8.3</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p> |
| </section> |
| </article> |
| </div> |
| </body> |
| </div> |
| </html> |