Likelihood to Recommend It is very easy to verify Images with drawable resources Color Verification we can do this by referring to the same hex code as the developer team used so that it is reused. Opening a desired activity without performing End-to-end flow which eventually saves time. If the application is built on Android we can go testing activity with Espresso as it provides all the necessary APIs Espresso is not appropriate to iOS app automation, from a business point of view we need to hire new resources for iOS testing. Read full review We are implementing React Native framework for the development of the Front-End for the machine learning models maintenance and monitoring website. It provides meaningful error messages, and time-saving and robust tools make it a premium choice over other platforms. Moreover, it provides intelligent debugging tools and error report mechanisms. And most importantly for us, it provides the aesthetic minimal functionality to learn in order to implement it, thereby eliminating the need to work in Xcode or Android Studio for iOS or Android apps respectively.
Read full review Pros Automatic Waiting logic before failing any test Black box and Grey box testing Easy to Understand and Very Flexible Supported Java And Kotlin Fewer Efforts compare to other Mobile Automation Frameworks Execution is very Fast Read full review Customized Components State Management Extensibility Usage and Community Read full review Cons As Espresso works on the ideal thread if the threads are not handled properly by the developing team it can lead to challenges in the execution of your tests. Depends more on the developer's code we cannot develop tests as individual frameworks, we share the repository with developers. We need to be cautious while making changes in the tests, as we share same repository Read full review Performance is still lower than native app development (Kotlin, Swift, etc.) Not efficient design-wise (if you are planning to implement some advanced design, then you should reconsider the approach provided by React Native) Issues with the update to the last release of React Native Read full review Alternatives Considered As our app is complete on Android Espresso is the best choice over
Appium Fewer efforts in Espresso over
Appium , as Espresso provides some built-in library to perform the operation. Easy to use, Espresso is very easy to understand and we can perform operations with very little code. Developers can contribute, as they have good command over Java and Kotin languages and also use Espresso for unit testing.
Read full review Decision for React Native came mainly from the big popularity of the framework. Thus, we had a big base of resources we could come back to. We also used it because it is a javascript framework. Thus, we could utilize the already existing experience in javascript and web development to ensure a smoother implementation of the app.
Read full review Return on Investment As it is an Open Source tool it cost-effective East to use, so that you can train many new Joiners to start delivering the tasks Maintainance is very low, as we depend on the developer's layout files we can reuse their elements We can cover most of the scenarios which helps in the coverage of the tests Read full review Decreased the development process time via robust and easy-to-use platform Easier to debug with a provided intelligent tool as well as error-prone messages, which allows developing in a paced manner for the decreased Time-To-Market Reusable code base can directly impact lead time and thereby on ROI in a positive manner Read full review ScreenShots