Ranorex - Advantages ● Cross platform support ●Test Automation Library for.Net ●Standard programming langauges C# and VB.Net for scripting ●Test development environment (Ranorex Studio) features recorder, debugger, object spy and repository ●Flexible Test Automation Library Interface Test suites with Ranorex results in.EXE files for simple integration with test management, behaviour driven development and continuous integration server tools ●Customizable Test report engine.
How does it work? RT App (Our Build) Android iOS Windows Gherkin BDD Stories Run Tests (TeamCity Server) 4. Specflow reads bdd (formatted in Gherkin) 3. Team city runs Visual Studio project + Visual Studio Ranorex Library SpecFlow BDD Stories are turned into Visual studio projects Device/Simulator SVN 2..Exe is stored in repository 5. Connects to device through WiFi 6. Test Scripts runs on RT App.
Ranorex-Disadvantages ● Xamarin related automation Issues ●Support takes more time for Xamarin related issues ●Ranorex agent compatibility with Application is poor and causes crashing as new features are introduced in app ●Instrumented application is slower than original Application ●Some Touch gestures/Drag and drop operation not supported ●In case of crashing/hanging, Automatic launching of closed Application is not supported ●Need to provide long waiting times for object identification.
Appium - Advantages Active community No extra code into application Open source – we can make our own fixes and ask for pull requests on github Easier to learn and implement than Calabash Element inspector in Appium app
Appium - Disadvantages Over 50 open bugs with iOS Unable to get hooks on certain elements in complicated apps(programme detail page). https://github.com/appium/appium/issues/537 Inconsistent with outcomes(due to no wait/delay) Currently cannot drag – known logged bug
Appium - Demo
Calabash - Advantages Now owned by Xamarin Wait/sleep functionality Can swipe BDD Layer easily configurable
Calabash - Disadvantages Not tested enough? No updates in months – maybe due to takeover from xamarin so may become closed source. Must be written in Ruby and cucumber - Can be tricky
Calabash - Demo
Conclusion Best tool to use is Calabash: ● Owned and supported by Xamarin ● More stable and reliable, testing is more consistent. ● Easier to setup the BDD layer for QA’s
How does it work? Xamarin (Our Build) Android iOS WP CalabashCucumber Gherkin Ruby Run Tests (TeamCity Server) 2. Cucumber reads BDD (formatted in Gherkin) 1. Team city runs Cucumber scripts. 3. From the parsed Gherkin files, Cucumber runs the retrieved Ruby files and methods. 4. Ruby talks to calabash to run commands on the platforms.