EarlGrey alternatives and similar libraries
Based on the "UI Testing" category.
Alternatively, view EarlGrey alternatives based on common mentions on social networks and blogs.
-
Bluepill
Bluepill is a reliable iOS testing tool that runs UI tests using multiple simulators on a single machine -
TouchVisualizer
DISCONTINUED. Lightweight touch visualization library in Swift. A single line of code and visualize your touches! -
ios-driver
Selenium server to test native, hybrid and web apps on IOS. Join us on IRC #ios-driver on freenode -
AutoMate
Swift framework containing a set of helpful XCTest extensions for writing UI automation tests -
appium
Appium is an open source test automation framework for use with native and hybrid mobile apps. -
UIAutomation
JavaScript library to write test scripts that exercise your app’s user interface elements while the app runs on a connected device. -
Flawless App
tool for visual quality check of mobile app in a real-time. It compares initial design with the actual implementation right inside iOS simulator.
InfluxDB - Purpose built for real-time analytics at any scale.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of EarlGrey or a related project?
README
Deprecation: EarlGrey 1.0 is deprecated in favor of EarlGrey 2.0 which integrates it with XCUITest. Please look at the earlgrey2 branch. EarlGrey 1.0 is not being maintained internally with iOS 13.
EarlGrey
For EarlGrey 2, please go to earlgrey2 branch.
EarlGrey is a native iOS UI automation test framework that enables you to write clear, concise tests.
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.
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.
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).
Getting Started
The EarlGrey documentation for users is located in the EarlGrey/docs 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.
Getting Help
If you need help, several resources are available. First check the FAQ. If you have more questions after reading the FAQ, see Known Issues. You can bring more specific issues to our attention by asking them on stackoverflow.com using the #earlgrey tag. You can also start new discussions with us on our Google group or request to join our slack channel.
- FAQ - Frequently Asked Questions
- IFAQ - Infrequently Asked Questions
- Known Issues
- Stack Overflow
- Slack
- Google Group
Analytics
To prioritize and improve EarlGrey, the framework collects usage data and
uploads it to Google Analytics. More specifically, the framework collects the
MD5 hash of Bundle ID, Test Class Names and Test Method Names. This
information allows us to measure the volume of usage. For more detailed
information about our analytics collection, please peruse the
GREYAnalytics.m
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
- (void)setUp
method:
In Objective-C:
// Disable analytics.
[[GREYConfiguration sharedInstance] setValue:@(NO) forConfigKey:kGREYConfigKeyAnalyticsEnabled];
In Swift:
// Disable analytics.
GREYConfiguration.sharedInstance().setValue(false, forConfigKey: kGREYConfigKeyAnalyticsEnabled)
For Contributors
Please make sure you’ve followed the guidelines in CONTRIBUTING.md before making any contributions.
Setup an EarlGrey Project
Clone the EarlGrey repository from GitHub:
git clone https://github.com/google/EarlGrey.git
After you have cloned the EarlGrey repository, download all the dependencies using setup-earlgrey.sh.
After the script completes successfully, open
EarlGrey.xcodeproj
and ensure that all the targets build.You can now use
EarlGrey.xcodeproj
to make changes to the framework.
Add and Run Tests
Unit Tests
To add unit tests for EarlGrey, use UnitTests.xcodeproj
located at
Tests/UnitTests
. To run all unit tests, select the UnitTests Scheme and press Cmd+U.
Functional Tests
To add functional tests for EarlGrey, use the FunctionalTests.xcodeproj
located
at Tests/FunctionalTests
. To run all functional tests, select the FunctionalTests Scheme and press Cmd+U.
*Note that all licence references and agreements mentioned in the EarlGrey README section above
are relevant to that project's source code only.