logo logo

Benefits of Record and Playback Features in Test Automation

main post image

Record and playback features are a really useful tool for automated test development. The way they work is that the test developer clicks a record button, does some actions, and then clicks stop. When replaying the recording, the same actions should be performed.

The terms recording and playback can be a bit of a misnomer. When ‘recording’, code is being automatically generated. This code runs when the user ‘plays back’ the recording. Changes can be made to the code to make the test run differently. This allows the test developer to update, maintain and make improvements to the tests.

Benefits of Recordings as an initial code generator

Personally, I do not recommend relying solely on record features when developing automated tests. Tests can be out of date after just a few minor changes made to the application. Having to record everything again when a small change is made makes the test costly to maintain. This removes a lot of the value gained from automated test development.

However, writing large amounts of code manually can be time consuming. Automatically generating code using recordings can speed up this process. The code generated is clear and concise and can be easily understood. Some developers may write code that is difficult to understand by someone other than themselves.

Once the initial code has been generated, the test developer can make alterations and additions to the code. This allows for more sophisticated automated tests to be developed very quickly.

Benefits of Recordings for mixed skill teams

Software test teams can often comprise of several members with varying skill sets. This is particularly the case if there are certain members dedicated to manual testing and automated test development. Some members may not be confident in their programming skills. They should not be excluded because of their lack of experience. They may have alternative skills and ideas that could improve the tests.

The initial test developer who made the tests may be unavailable for whatever reason. This means that these tests need to be maintained by someone else. Having all members of the team, regardless of programming skills, able to make even simple updates to the automated tests can be beneficial. Changes can be made by altering the code or by creating a new version of the recording.

Recording features are an excellent learning tool. The code is automatically generated which enables the developer to examine and learn from it. From this, the developer can gain confidence in their programming skills. These skills can be used to update and maintain existing automated tests, and develop new tests.

Benefits of using tools to improve testing

I once heard someone claim that no one will recruit an automated test developer who uses record and playback features. This is deeply concerning as, in my experience, even someone with exceptional programming skills may still choose to use these features as a guide to speed up test development. Why would you refuse to hire someone who made use of a tool that improved their productivity? There can be a dangerous assumption that someone who uses record and playback features does so because they lack the technical skills required for test automation.

Test automation is a tool that helps with testing a software application. Someone who runs automated tests may also run manual tests. Some test teams may choose not to make use of this tool and instead rely solely on manual testing. Both methods are acceptable. What I would not recommend is relying solely on test automation.

The same principle applies to record and playback features. They are a tool to aid in the development of automated tests. Someone who uses this feature may also adapt the code generated from the recordings and introduce some code of their own. Some test developers may decide to manually write all the code for their automated tests. Both approaches are acceptable. But like manual and automated testing, I would not recommend relying solely on recordings to develop automated tests.

Regardless of skill set, anyone with access to a tool that makes their job easier is entitled to make use of that tool. At the end of the day, it is your choice how you decide to use these tools to your advantage.

In my next article, I will share a few useful methods that can be used to further improve recorded test cases, such as: separating a single recording into several smaller recordings, reusable recordings, creating data-driven tests, exception handling and much more. Stay tuned! 

 

I’d love to hear your thoughts in the comments below. Let’s start an open discussion on this matter!  💡

Louise Gibbs

About the author

Louise Gibbs

Louise is a Software Test Engineer and Malvern Panalytical, an organisation that develops scientific instruments. Her role requires her to test and assess the quality of the software used to control the instruments. She develops, maintains and runs both manual and automated test scripts. Louise has also worked for companies who develop software for the Automotive industry, testing software used for running loyalty schemes with the aim of ensuring customer loyalty and retention.

Join TestProject Community

Get full access to the world's first cloud-based, open source friendly testing community. Enjoy TestProject's end-to-end test automation Platform, Forum, Blog and Docs - All for FREE.

Join Us Now

Comments

11 1 comment
  • What I read this week (10th Feb 2019) | Louise Gibbs – Software Tester February 10, 2019, 11:45 pm

    […] Benefits of Record and Playback features in Test AutomationAn article that I’ve written for testproject.io on the benefits of record and playback features in test automation. […]

Leave a Reply

Join TestProject Newsletter

Join a 20K community of readers! Always stay up-to-date with all the latest test automation trends, best practice and tips shared by leading software testing community experts across the globe!

FacebookLinkedInTwitterEmail