Hello guys, i saw a link in the internet with 7 steps about how implement automation tests and I will explain in other words what he told:
- Leadership support. Ask support of your boss to automatize the tests, show to him what you will win: time, money, effort. Search about cases in companies that was a success, show the positive points… You have to convince your boss that you will have a lot of gains.
- Choose the tool. Search about the tools on the market. You can make a POC with the tool and analyse if will supplement your needs. Make a prove of concept with a little part of your functionality. Costs/benefits ? You have to analyse according to the product will be tested. You can choose some free tools like WebDriver/Selenium or a shareware tool like QTP from HP.
- Language. Talk with your team if they can learn another language and what are the languages that they know. Look in the development team what is the language that they use, take this into consideration too (if you need something about the language, they can help you). Choose a language that the team have more facility to use/learn, the language that the development team use, the effort of change the language.
- Time and Schedule. Now that you convinced your boss to automatize the tests and you know the tools that you will use, you have to plan the schedule. NEVER EVER AUTOMATE EVERYTHING !! This is a common error and impossible to do ! Remember the main objective of automated tests is REGRESSION. You have to put criteria what you will automate, like: What is the most used function/process ? …. What is the function/process most important ? … What is the function/process that have more bugs ? Measure the initial investment and don’t forget to show the objective, the results you will achieve. How much time/effort/money you will save ? How you can spend the time saved with another activities ?
- Workout. “A stupid with a tool still is a stupid person.” Form a team of automation and equality the level of knowledge. Make some meetings to prepare people in your team to use the tool with wisdom. It is better everyone know everything in your team, but we know that we can have some people who have facility to learn something in specific.
- Include the Automation in your development. You have to know what to do and when do it. Involve SQA, or the team who have the responsibility of the process in the company. They have to learn this new process that will be deployed.
- Structure of Scripts. Make Defaults. This will help you when one person of your team have to change something in the script of other person. Like Parameters, the structure of your automated tests, the name of variable, the comments, the name of classes… It is better that you separate the scripts according to the experience and facility of each person in your team. So, if someone likes and has facility to do the script with the structure, you have to let he/she do this. If you know that a specific person in your team has facility to write scripts about the business, you have to let he/she do this and become the main center of the scripts of business. Focus on reutilize. Yes, enjoy the scripts and have less work. Continuous Integration ! Without this your work will be lagged. You have to update the scripts and use they after each modification to know if they continue working. We have a tool called Jenkins that it help us with this part. The developers can change something and after the deploy, Jenkins will run the scripts of regression tests to know if something in application was broken.
Did you understand everything ? I wrote running today !
If someone has some question, go ahead and comment below 🙂