? QA Design Gurus: Automation Testing

May 10, 2016

Automation Testing



Automation testing is a best practice and effective ways in finding bugs.  We all are familiar with the benefits of automation such as correctness, increase in speed, effective, decreases cost, saves time and money. A part from all the benefits a tool provides, it is equally important to choose a suitable tool for your application.





Automation Tools:

There are various tools available in the market from open source tools to licensed ones. One has to evaluate the different automation tools available before choosing the right tool, whether it might be for GUI automation, Web applications automation or a mobile device automation.  
In automation phase, we should firstly think of the categories of What to automate, what not to automate cases. Then most importantly on cannot be automate cases, as 100% automation cannot be possible by any automation tool. 

What to Automate:

Before automating the test cases/features it is a good practice to start automating the cases based on the priority. High priority cases should be automated first and then continuing with the rest of the cases. One has to pick the cases which can be automated Automation has to be there for the complex cases which involves different permutation and combinations as it reduces the manual effort and cost.
It is difficult to test various kind of testing types manually such as performance testing, load testing, stress testing, etc., which can be effectively handled by automation. Thus automating these testing types helps in delivering a quality product.

What NOT to Automate:

It is always good to automate all the possible cases in a feature and it is also important to ask a question yourself before automating, that does this has to be automated or not?  As in agile model, we will be segregating and delivering an application in different sprints/iterations we have to check for the stability of UI or application before automating. Also there will be onetime things which is sufficient to check manually rather than automating.

Cannot be Automated Cases:
As said, we cannot achieve 100% automation by any tool. Quality Software testing should be a blend of manual testing + automation and not alone automation testing, because certain things can only be captured by human eye and not by tool like usability testing, Ad-hoc testing, look and feel of the GUI, etc. 


100% PASS Criteria: 

Do not be overwhelmed if your tests are 100% passing for 24/7, there should be some serious problems in the scripts/tests you have written. Confused? Ok let me clarify this, when your application is changing everyday by someone and you think that it does not break any of the existing functionality? Is that be possible? No right? That’s how it is, as we are humans and we may commit mistakes/errors in the code which will also effect the existing functionality. Recheck the verification points of your tests/scripts it may miss the bugs.

Script NOT Well written?

Don’t be panic if a script fails, as said 100% pass criteria is a not a metric of quality. Analyzing the failure and finding the root cause of the failure helps in knowing whether it is a script error or a bug in the application. Let us consider that test is failing to recognize a pop-up dialog and we think that is a timing issue and keep on increasing the wait time leads in missing a performance bug. A memory leak after running few suites happens while running the suites does not show up if you run a single script. So proper analysis is a must thing to do when a script fails before concluding or modifying the script.

Conclusion:

As automation testing is very important, choose the right tool for the best results. Prioritize the testcases for automation as per the manual effort or cost. Automate the cases which can be automated. Finally, after completing the automation if script fails analyze the failure and report the bug if found.



3 comments:

  1. Hello,
    The Article on Automation Testing is nice detail information about it.Thanks for Sharing the information about Automation Testing. Software Testing Services

    ReplyDelete
  2. Really nice topics you had discussed above. I am much impressed. Thank you for providing this nice information here.

    Software Testing Company

    QA Services

    Mobile Game Testing

    Gameplay Testing

    Switch Game Testing

    ReplyDelete
  3. Wow, What a Excellent post. I really found this to much informatics. It is what i was searching for.I would like to suggest you that please keep sharing such type of info.Visit here for Penetration testing services

    ReplyDelete