7 Tips to screw any Test Automation Initiative

Companies often spend a lot on performing test automation to reduce the efforts spent by testing team. We read a lot about how to make the automation projects successful, but, have you ever thought on how you can achieve it otherwise. If you are one who want to make any of the automation initiatives unsuccessful, do proceed reading further.

Don’t involve team during planning

Planning is not important. Just tell people what areas they will work and they will deliver. This will ensure that people are spending time in delivering what they are asked to do without putting their brains behind.

Select tool based on team knowledge

Irrespective of the technology used by the application, use the tool that the team members assigned to the project knows. Don’t waste time on hiring or updating the skill sets of people.

Estimate based on your scripting speed

Don’t consider test case complexity/team skill sets/learning curve/hiring time etc while estimating the efforts. Just estimate based on how much you alone will be able to achieve.

Automate areas having high probability of changes, first

Consider that the critical areas from the point of testing are the ones that are getting changed in every build. Start automating them first. This will ensure that the team spends the time on maintenance rather than new development.

Freeze the build for the complete duration of project

Before starting the project, be strict on not changing any product build, irrespective of releases made to the testing team in between. Just make your scripts compatible with the initial version of the build provided to you. This will ensure that your scripts do not run on the latest build and hence will help in failing the UAT.

Avoid any communication with stakeholders

Stakeholders always ask for reports that often decreases the productivity. They also do not have any rights to get information on the challenges that the team is facing. If you want to fail miserably, it is seriously advised not to tell stakeholders anything about the project before the final delivery.

Keep Script integration at low priority

Do not estimate for script integration and do not even care for it. If time permits, then do it immediately before UAT so as to ensure there is enough evidence of script not working.

In case you have any other tip, request you to share it in comments and I will add it up in the upcoming post.

Advertisements

Automation – Shall I invest in building dedicated team?

There are many instances where it has been seen that organizations complain of not getting enough ROI from their automation initiatives. When they get to identify this, the blame game starts and people start pin pointing the test automation team for not creating the right strategy beforehand.

One of the major issue that I have seen is that many a times people are reluctant to admit that there needs to be a dedicated effort and plan in place for automation. They feel that if they outsource the work of framework development to any third party contractor / vendor and then ask the vendor to train the current manual/business team, the job will be easy. In case of optimization of efforts, they might be correct, but they fail to understand that this will put a lot of burden on the automation solution and it might not be best designed based on product needs.

Another issue that I have seen is that the current testing team (with manual mindset) is asked to upgrade the knowledge and start the automation work in their free times. This again puts a lot of risk on the whole initiative and at last it does not work for the long term.

We all definitely need to understand that the automation is not a part time activity that can be done by part time people. It is a niche skillset that is equivalent to development. As any product success depends on a good architecture and team, automation solution is also dependent on a good framework architecture and good team.

On a high level, the automation plan / initiative should consider the following from team perspective

  1. What do we want to achieve from automation?
  2. How will we achieve it? Do we need to hire from outside or do we have experts inhouse?
  3. If we hire the complete team from outside, what will people do once automation implementation is completed?
  4. Can we hire experts using subcontracting? What is the rampup and rampdown plan?
  5. How to handle the maintenance phase?

Reusable Test Automation Framework – Do Not Trust!

In any software company, wherever you go, you find typical species of people who want to just break the software, do not want to bow down under business pressure to release low quality software and are often termed as fussy. This species is specifically termed as ‘Testers’.

Nowadays, there is a special requirement that is being given to this species. It is to automate as much as possible. This poor specie is under pressure to learn automation and implement it and behave like a developer. So what is happening? Is the automation that is being proposed or done under such pressures really worthwhile? Are the companies really getting benefits out of it?

I am seeing it a fact that reusing a framework has become a fashion nowadays. Everyone is talking about so called ‘Hybrid’ framework. Even if the application is complex and steps are repetitive, testers end up developing a keyword driven framework (which they call hybrid as well) for it. I have been confronting with these people about why they are doing so when that framework might not yield a good return in the longer run for that particular application. The answer that I get is.. I developed it in the past in one of my projects and hence it is a proven way to automate!

It seems to implement an already known framework has become a fashion in the industry. The reason is simple. No one wants to take risk and try something new or may be no one wants to understand the exact need of the application under test.

REQUEST -> Please do not treat test automation as an activity that can be based on a poor framework. The framework should be designed to fulfill the application needs and not your personal needs.