Espresso and Robotium are
instrumentation-based frameworks, meaning they use Android
Instrumentation to inspect and interact with Activities under test. The
major advances in Espresso over Robotium:
1.Synchronization: By default, instrumentation test logic
runs on a different (instrumentation) thread than UI operations (processed on
the UI thread). Without synchronization of test operations with UI updates, the
tests will be prone to flakiness - i.e. will fail randomly because of timing
issues. Espresso takes care of thread safety by seamlessly synchronizing test
actions and assertions with the UI of the application under test. Robotium
attempts to address this with sleep/retry mechanisms, which are not only
unreliable, but also cause tests to run slower than necessary.
2.API: Espresso has a small, well-defined and
predictable API, which is open to customization.
3.Clear failure information: Espresso strives to provide rich debugging
information when a failure happens. Further, you can customize the way failures
are handled by Espresso with your own failure handler.
For more information Read
More
No comments:
Post a Comment