Why I Created a Selenium Recorder But Rarely Use it myself?
Record-n-Playback has bad reputation in test automation.
I am against using recorders for test automation, except for two situations:
Training
“Selenium IDE is the place to start with Selenium, but it is Selenium on training wheels” — Jason Huggins, the creator of Selenium v1 at AAFTT Workshop 2009
However, with the advancement of Browser (Chrome) and testing tools (such as TestWise I created. By the way, iTest2, TestWise’s former name, was demonstrated at this AAFTT Workshop 2009), I found using recorders was no longer necessary. Attendants of my training verified that. Check out my new “Selenium Training Workshop”.
2. Writing tests with many similar steps
This is very rare. I only remembered one case. It was testing a set of law document pages (generated from software) containing many “Yes or No” radio buttons. Recorder helped me with that.
As I stated in my book ‘ Practical Web Test Automation’ 10 years ago: “test script recording is only useful if the steps are refactored to maintainable form immediately”. If you do a google search of ‘record/playback’ review, it is almost all negative. Yet still, there are no short of ‘new test automation record/playback tools’.
Record/Playback scripts are notoriously costly from a maintenance perspective. — ‘Agile Testing’ book, p315.
I created TestWise Recorder for Firefox back in 2009, with the purpose of training professionals who are new to test automation. Since 2015, I stopped using recorders in my training, as the Snippet feature in TestWise and easy-to-use Chrome Inspect made it no longer needed.
With Firefox changing its extension architecture, almost all extensions stopped working on Firefox 57+, including the official Selenium IDE (which is a bad name, IMO, it is a record/playback tool really). I received the requests for an updated version.
At that time Selenium IDE for chrome was not available yet, so I created one Chrome extension (direct link on Chrome web store).
Update (2022-09): TestWise Recorded is pulled off Chrome Web Store because it was on old manifest version (v2), and I don’t want to spend time on it.
You can still use it vis manual install, check out here.
Some may say: “If there is an official Selenium IDE, why bother another recorder?” Here are my reasons:
It is a lot simpler and easier
It records, but NO playback. Playback, in my opinion, is very bad. It easily gives new-to-automation testers the impression that recorded test scripts are the final products.
Why I created a reorder then?
I want to learn how to write a chrome extension
I can show people that I do understand recording well.
After knowing my recorder, the students (who came to my training) will be more likely to follow my advice: “Avoid Recorders”
Here is a quick demo of using TestWise recorder to create a simple test case in TestWise IDE. The video below, besides installing/using TestWise recorder, includes refactoring to transform recorded test steps in page objects as well.
More recording scenarios: