QA City

   QA City >> Expert Column
Dont Miss Experts

Automation Testing - Best Practices - Part 1

Ananya Das
Ananya Das
Senior Manager, Program Management (Delivery),Testing Centre of Excellence Head,Quality Head, Snapon
Ananya is having 19 years of hands-on management experience in the Information Technology industr... more>>
Testing is one of the oldest forms of verification. Several testing techniques have been advanced and used by software developers/ testers to increase their confidence that the software has various qualities. When we are planning to implement automation testing, always a simple question raises in everyones mind is why, how and when to implement automation, in testing.

What are best practices?

Best practices are guidelines and advice on the best way to do something; collected over time and based on experience with previous projects. Best practices in an organization should come from the bottom of the organization up, rather than being mandated by management. These best practices might even differ from organization to organization, but certain key factors are present in successful organizations and projects.

Few of them are:

Know your objective


Test automation can save time, make testing easier, and improve the testing coverage. It can also help keep testers motivated; however, it is not likely that the organization will need to do all these things at the same time. Different groups typically have different hopes and ideas of what they want test automation to offer them. These need to be stated, or else disappointment is likely.

Select the correct product or suite of products


Buying the wrong tool is listed as one of the major challenges in test automation, because - no matter what kind of process, methodology, or organization you have - if the tool is not a good technical and business fit, it will not be used. We know that a good process and organization are also essential for test automation. However, if the tool will not function at a basic level, the people who should use the tool, and thereby gain the benefit from the tool, will not use it.

Get executive management commitment

Test automation can yield very substantial results, but requires a substantial commitment to be successful. Do not start without commitments in all areas, the most important being executive management.

Arrange a proper manual test process

You can script to your hearts content, if you do not have a proper manual test process in place the benefits of test automation will never be seen. It will only assist you in doing the incorrect process a lot faster. Test automation merely assists and enhances the test process itself. Ensure that a proper test methodology is implemented before attempting to add test automation.

Get Familiar with the Tools

Go through the tutorials that tool Software provides. While the tutorials arent the definitive guides as far as training is concerned, they do get you familiar with the software. If you feel you still need more familiarity with the tools after youve completed the tutorials, hire a training consultant to come in and spend some time with you. Make sure your whole team has had some form of training or some reasonable amount of time playing with the tools before you try to do any real work.

Have at Least One Programmer on Your Team

Rule number one for efficient automated testing is to have at least one real programmer in your testing-automation group. Youll soon find out that automated testing is code development. While its not Java or C++, youre still building a system of scripts, data files, and libraries. For example, the descriptive programming of QTP needs extensive usage of VBscripting.

Set Standards

Youll also find it useful to develop standards for your automated-testing team. This is just as important in testing as it is in conventional software development. Your test system will develop more rapidly and will be easier to maintain if you establish and enforce naming standards, coding standards, environment standards, and procedures for error and defect tracking. Having these standards documented will also allow people new to the project team to come up to speed faster.

Document Everything


Document why you designed things the way you did. Document what each library does, and what each function in it does. All of this documentation is useful as training material or for future reference, and it helps you keep track of lessons learned. Sometimes documentation is the only thing that can save project scripts that no one has worked on in a while.
Experts on QA
Swaid Qadir Bhat
Sr System Architect
Virtusa Corporation
Subhash  Motwani
Founder
COMPACT TRAVELS PVT
Prasad Rao Pasam
FOUNDER & CEO
SHAR TECHNOLOGIES
Ayaskanta  Mohanty
Managing Director
TATWA Technologies
Rajesh  Dagar
Software Architect
Connect Icon Pvt Ltd
Yasar  Khuthub
Software QA Manager
Azure IT Solutions
Sunil  Bhat
Project Management
HCL Infosystems Limi
Sharad  Agarwal
Team Lead
Infosys