I first discovered TestProject after hearing an interview with Mark Kardashov (CEO & co-founder) on an episode of the TestTalks podcast. For those who are unaware of TestProject. TestProject is a complete automated testing solution that is built ontop of Selenium and Appium.
Allowing it to be used for web-based testing, smart phone applications (iOS/Android), it is also backed by an invaluable community of enthusiastic testers discussing the latest trends and testing news. The community also serves a critical resource for seeking the answer to any questions that you may have about the platform.
TestProject is the brain-child of a team of developers based in the Israeli town of Petah-Tikva. Initially developed in 2015. However, they are now a member of the Tricentis family of software testing products.
I had been working with Selenium for quite a while when I first heard of TestProject. But always being open to widening my knowledge, experience and toolkit. And based on what I heard in the podcast and discovering that TestProject takes advantage of many features of both Selenium and Appium through an extensive SDK. I had to check it out.
To get started using TestProject, you need to sign-up and download an agent application that can either run on your local or a remote machine. Or you can configure it further to run in a Docker container for complete isolation of your test environment. Allowing for quick setup and sharing between agile team members.
Once you are all setup and ready to create and running test cases. You will soon discover that while it invokes your local browser installations for test execution (if you are running a web UI tests for example). All of your test code and test cases and stored, hosted and tied to your TestProject account. This may immediately seem as a disadvantage to some people who may want to share their tests with another member of their team. Check the code into an SVN or just keep a local backup.
But this is actually one feature of TestProject that I and many people love about the service provided by the testing solution.
While a single person may initially perform the creation and maintenance of a project. You can easily invite another approved members of your team to collaborate with you. Allowing for sharing of additional tests as well as custom addons and testing results.
And with tests stored and executed from a managed cloud environment. The time from creation to execution on local or remote environments is almost instantaneous. All you need to do is install an agent and your ready to go with no complex setup or configuration.
Smart Test Recorder
On the surface, you may be forgiven for thinking the TestProject is just another record and play back product. Historically known to be clunky and produces results that are unstable and inaccurate with questionable locator strategies. However, this assumption could not be farther from the truth.
Instead, TestProject’s recording strategy is what they call a Smart Recorder. The fundamental difference between this and other record and play back solutions is in how TestProject works with and creates validations and locators for your page elements.
Instead of the recorder deciding the locators you want as you click around the web page or application with no customisation. The Smart Recorder instead uses artificial intelligence (AI) to identify each element as you move around, allowing you to set custom validations and generate element locators. You can even save previously identified elements to a library allowing for manual customisation and modification. So that if elements are updated with new IDs or class names. Updating your elements to allow your tests to run again is as pain free as possible.
Not to mention that since all tests are built on top of Selenium & Appium. Each one can be exported in their coded format and easily customised further if you choose.
Extendable with pre-built add-ons and the ability to create your own
One of the standout features of TestProject is the ability to work with a vast resource of addons, both official, and created by the amazing community behind TestProject. And if there’s something that you want to do that isn’t immediately available. You can download their official SDK and create your own.
But what are addons?
Essentially, what addons do is extend the features of the platform and allow you to perform additional functionality that doesn’t come ‘out of the box’.
So lets say you have a test requirement to work with a PDF document and ensure that it contains certain text and content. You add the addon to your account by installing it and you can immediately use it within your test creation.
There are even addons for working with CSV files, API services and additional Android integration.
Integrates with a growing list of tools and services
The usefulness of a program is often measured by it’s ability to integrate into existing workflows. And TestProject provides as many tools as it can to promote that idea.
Many test suites can often be large and take some time to run. Often I find myself being forced to refer back to a status screen to establish if my suite is still running, or if my test results are ready for analysis.
TestProject addresses this problem by easily and seamlessly integrating with Slack to provide useful updates about your test execution directly for the entire chatroom to see.
And with support for webhooks and a dedicated API. You can also integrate with additional tools like Jenkins. Cloud based platforms like Browser Stack and Sauce Labs. As well as exporting your tests to the Tricentis test case management product qtest .
Oh.. and it’s, free to use.
TestProjects pricing structure lowers the barrier to using test automation solutions for a lot of testing teams.
Not everyone has the time to set up and configure their own framework. Update it over time with new features. Or ensure that it works on multiple platforms and device contexts.
TestProject have built a product that takes away that complex step and with a simple setup and effortless configuration. Being able to grasp the benefits that test automation brings is within touching distance for anyone who wants to transform their testing strategy and take advantage of the powerful options available.
TestProject’s slogan is ‘Free Test Automation for All’. So if you are evaluating an automation solution for your team to use. I seriously think that TestProject should be on your list of potential candidates.