Likelihood to Recommend 1. It's open source which supports range of languages, operating systems and languages. Well suited for Android and IOS mobile automation. Supports all kinds of apps, which makes it flexible and robust mobile testing tool 2. It is less appropriate where we need intercept network call to verify the API calls. Extensive coding experience is required to work Appium
Read full review If you are required to develop applications that are cross-platformed, Xamarin is a great tool to use. It will help save time and effort from your development team to be able to build applications seamlessly for android, IOS, Windows, and web on a single platform instead of requiring multiple tools to get the job done.
Read full review Pros It uses WebDriver API so it makes it easy to use for former web test automation engineers. It can be managed via the command line via an extensive set of parameters. It handles implicit waits at the server side that is especially valuable in distributed infrastructure. Read full review Xamarin allows you to write cross platform code. This allows companies to build apps more quickly by writing less code. Having code abstracted and reused across multiple platforms allows for more testing and less issues overall. The ability to use Visual Studio is a huge plus. Visual Studio is one of the best IDE's available and being able to write cross platforms apps while in a great IDE makes everything less painful. Xamarin is now free with a large company backing. This means that bugs on the platform get fixed more quickly and there is a large community of developers. Read full review Cons Element browser sometimes is unreliable and has sporadic fails. Appium running is a bit slow, compared to tests written with Appium and with Espresso or XCTest. Read full review Forms - not 100% there. Still needs work but is production ready. iOS - sometimes errors can be hard to understand, if they even show up. Insights - Xamarin offers their own crash analytics software. However, it's not perfect and sometimes doesn't pick up crashes. Read full review Likelihood to Renew Xamarin has been great for developing different projects efficiently and effectively. It's nice to reuse the core business logic across different platforms so that there are less to maintain and little replications are needed. The biggest benefit is that C# programmers do not have to learn a different language to do mobile development.
Read full review Usability If you are required to develop applications that are cross-platformed, Xamarin is a great tool to use. It will help save time and efforts from your development team to be able to build applications seamlessly for android, IOS, windows, and web on a single platform instead of requiring multiple tools to get the job done
Read full review Support Rating I never had to contact support for any help. Most of the problems we ran into, we were able to identify and use peer support through blogs and other internet sources to resolve the problems. There are plenty of sources online which provide tutorials, discuss problems, etc. Example: StackOverflow
Read full review Implementation Rating Just with any programming tasks, have a plan first. Design out the system, spend time to build it correctly the first time and have plenty of testing and user acceptance opportunities. Xamarin was easy to implement for a C# programmer. However, you need to do tutorials to realize the platform's capabilities.
Read full review Alternatives Considered If you're an Apple developer, you use Xcode. It's practically a forced necessity. For system testing though, it doesn't have to be. You can have your development team focus on unit and integration tests in their platform and another team automate acceptance tests with a language they are more familiar with.
Read full review Xamarin runs natively on MacOS, and the debugger and other integration and auto-complete tools are far better than
Eclipse for C# .NET. It also carries much of the plugin/add-on capabilities that are so desirable on Atom.
Eclipse is a better for generalized software development, provided a developer is comfortable switching between the IDE the command line for certain parts of their workflow, like building, package management, or debugging. But for C# .NET development on MacOS specifically, Xamarin is the best product I've used for the job.
Read full review Return on Investment Appium is open source, so it's free. That's budget friendly right there. The ability to write mobile automation tests has saved considerable time for our manual test team, but that is true with most automation tests. We use Sauce Labs with our other automation, but Appium works great with Sauce Labs, as well, if I needed to run on emulators and simulators. Read full review Saves development time and deliver fast. Allows inhouse developers build both Android and iOS application without switching languages. Allows use coding in C# in Visual studio IDE from which we can code in different languages. We don't need multiple IDEs installed Read full review ScreenShots