First off, the title is a little misleading.
This post is not about how TestProject is better than Selenium or Appium. It’s rather how TestProject enhances the already awesome features of Selenium and Appium.
Since writing about TestProject in a previous post, some folks have asked me what the difference between TestProject and Selenium or Appium actually is.
Does TestProject Replace Selenium?
I think we can all agree Selenium is the standard when it comes to browser automation, but did you know that Selenium WebDriver is now an official W3C standard as well?
W3C is an international community of member organizations that articulates web standards so that websites look and work the same in all web browsers.
So a few years ago the Selenium project ceased to be around one obscure body of open source developers and became an industry standard the browsers will have to support.
With the W3C standard, it will be supported even more in the future. Appium is also on the same path as Selenium as far as being adopted by the industry as a standard.
I’m pointing this out because lots of folks recognize this and don’t want to use a tool that doesn’t follow the Selenium or Appium standards.
Best in Breed Solutions
This is a valid concern, but the good news is that TestProject uses best in breed solutions like Selenium and Appium in their framework—with the added benefit of numerous functionalities you don’t have to create from scratch.
Selenium and Appium are used in the background, so a good way to think about TestProject is that it’s like a wrapper on top of Selenium and Appium.
Automation Wrapper
TestProject also acts as a wrapper over other technologies as well by using the power of add-ons.
TestProject explains an addon as a collection of coded action you can use within your tests.
That means there's a lot of built-in functionality available to you in TestProject that remedies many things you would normally have to code from scratch when creating your own test automation framework.
For example, Jonathan Lipps, Architect and Project Lead for Appium, has contributed to the TestProject framework by adding another add-on to their ever-growing list.
The Appium add-on Deep Links has the functionality to open special URLs (AKA “deep links”) that can be associated with specific apps. This approach can make your Appium tests run faster. Normally you would have to code up your own implementation of deep links, but if you’re using TestProject there is no need. Simply add Jonathon’s add-on to your tests and you’re good to go.
This is one of the greatest benefits of using TestProject.
Extending Selenium and Appium
TestProject was built from the ground up to take advantage of these awesome industry-standard libraries and extend them for you.
Mark Kardashov Managing Director at TestProject told me the reason for this is that according to his experience, there was a passion for open source; especially Selenium and Appium. He realized a few years ago that there weren’t any solutions that would allow a manual tester to use those tools efficiently. Selenium and Appium were mainly geared towards testers who possessed developing skills, while manual testers who didn't possess those skills were unable to use them.
TestProject’s framework was created to allow more testers and organizations to benefit from the two major open-source tools, Selenium and Appium, and collaborate with each other effortlessly.
TestProject is basically a framework that is fully equipped with all the features every test automation engineer needs, and which provides them with a complete toolchain around those Appium and Selenium frameworks and from, built-in reports to distributed execution capabilities recording capabilities everything you need to you have it there and it's all built around Selenium and Appium.
One of my favorite TestProject Appium’s driver enhancement is the ability to smoothly run iOS test automation on a Windows OS, without the need for macOS or Xcode.
Does it work with existing Automated Tests
So, what if you already have an existing Selenium or Appium test suite? No worries. TestProject provides some SDKs and coding capabilities as well.
You can use the TestProject SDK with standard Selenium and Appium APIs to integrate your existing tests, as well as develop new tests. They provide the advanced feature of generating code based on the recorded test.
For instance, after recording several test cases you can generate the code from them and then upgrade and enhance them with any additional code or logic you wish to add. But the majority of users are utilizing them and their recording playback feature, and it's working pretty well.
With TestProject, you don’t have to manage the coding and running of tests yourself. Instead, you can take advantage of a point and click interface while still relying on the benefits of Appium under the hood.
Running Test in CI Pipeline
TestProject also exposes a REST API that allows you to easily schedule and trigger your Selenium and Appium Test. So it makes it easy to include your test in your CI Pipelines.
Using their API documentation, you can achieve something very similar to Selenium Grid, in terms of running a test suite on multiple devices at once.
Who Should Try TestProject
So, should you be using TestProject?
Remember: Selenium and Appium are not frameworks; they’re API’s.
If you’re starting from scratch, you’ll need to develop all the plumbing that goes into creating an automation framework. TestProject, by contrast, is a complete platform that leverages the Selenium and Appium APIs under the covers but comes with everything else you need to get started with Automation Testing.
In a nutshell, TestProject, as opposed to Selenium and Appium, allows you to focus on creating awesome automated tests without needing to reinvent the wheel with automation framework creation.
Try it for your self ==> [here]