WebdriverIO, an OpenJS Foundation project, is a next-gen browser and mobile automation test framework for Node.js. It can be run on the WebDriver Protocol for true cross-browser testing as well as Chrome DevTools Protocol for Chromium based automation using Puppeteer.
Appium works well for well-structured mobile applications test automation that is particularly easy to leverage when different pages of the app use similar building blocks. If it takes time for some content in the app to be rendered, ask your dev team to add progress indicators and ensure they are accessible. That might be more complicated to do with Appium, though, if there's no good contact with Dev team established so you can request accessibility IDs added quickly enough when needed. Appium supports another locator strategies as well though (such as xPath or iOS class chain on iOS) but they wouldn't work as fast so you may get really slow tests.
I haven't seen a use case that WDIO can't cover, even including integrations into performance/load testing and mobile! The fact that there are boilerplate projects and code examples galore make it so simple to understand and see real-world PoCs of concepts you need to understand. I highly recommend WDIO!
There are a number of expected methods that are not implemented, yet. With a similar sounding name as Selenium with similar functions, people who are familiar with Selenium try to use methods that appear to be available, but give a "not yet implemented" exception when run.
Documentation can be confusing.
Setup was a difficult process. This may not necessarily be the case once you figure everything out, but the whole figuring it out process was difficult and I ran into many, many problems when I first started.
I would like to give 9/10 rating to Appium because of it can easily integrate with popular frameworks and CI/CD tools, as well as it is reliable, flexible and easy to use. The setup can bit complex in initial step, but once on configured it's very easy to use and enables stable and scalable mobile automation for real and cloud devices.
Most of mobile testing tools which are available in the market are paid license tools. But Appium is Open source mobile testing tool. We can create customised automation framework using Appium. It also supports various languages such as Java, Javascript etc. And also supports various operating systems such as Android, IOS etc. We can easily integrate Appium frameworks with CI/CD [Jenkins, Git etc].
1. WebdriverIO is used for automating both browsers and native mobile apps. 2. Selenium is being used on most of the languages except JavaScript (TypeScript) and our front-end development is in Reactjs
Gives easy access to Saucelabs Devices and VMs to the frontend developers who don't have to fiddle around with connection to Saucelabs itself - so ROI on Saucelabs as webdriverIO is free
The small learning curve to actually get set up and running - our working framework was written in a few days