Test Automation overview



What is testing? 
Testing is the process of finding bugs in software application is called Testing.It helps in validating and verifying software applications or product meets the technical and business requirements. 

What is Manual testing? 
Manual testing is also called as Eye-Ball Testing. Manual software testing is performed by any human manually opens the application and access the screens, trying various usage and input combinations , comparing the results to the expected result and record their understanding/testing result. Manual tests are repeated often during the development cycles for application code changes and some other situations like multiple operating environments and hardware configurations. 

What is Automation testing? 
  • The most critical approach to reduce time and boost the quality of testing is the software test automation process. In other word, Automation testing uses automation tools to write and execute test cases, no manual involvement is required while executing an automated test suite. 
  • These tools control the flow of execution and compare the actual result with the expected Result. 
  • In order to successfully plan and execute test automation, you need to have an effective framework, tested methodology, and suitable tools. 

Why Automation testing is important? 
  • Manual Testing of all work flows, all fields, all negative scenarios is time and cost consuming.
  • It is difficult to test for multi lingual sites manually.
  • Automation does not require Human intervention. You can run automated test unattended (overnight).
  • Automation increases speed of test execution.
  • Automation helps increase Test Coverage.
  • Manual Testing can become boring and hence error prone. 

Test Automation tool – What we can expect? 

To test a software, a manual testing engineer needs to do the following basic actions: 
  • Click a button, link, image (or any such control on the AUT) 
  • Select radio button 
  • Check / Uncheck a checkbox 
  • Type into an Edit box or controls which resemble edit box 

But also, he needs to get the run time data from the application and compare with the test data provided (i.e. checkpoints).  For this actually, we will be extracting the values from an edit box, button, link, image, table, drop down list, etc. 

All of these basic features are provided by Test Automation tools such as QTP.  There are many test automation tools which allow users to record user actions and replay them any number of iterations, compare the actual results with the test data and generate results. 

Benefits of Test Automation: 

In today´s fast moving world, it is a challenge for any company to continuously maintain and improve the quality and efficiency of software systems development. In many software projects, testing is neglected because of time or cost constraints. This leads to a lack of product quality, followed by customer dissatisfaction and ultimately to increased overall quality costs. 

Automated Software Testing Saves Time and Money:Software tests have to be repeated often during development cycles to ensure the quality. Every time development team code is modified software tests should be repeated. For each release of the software it may be tested on all supported operating systems and hardware configurations. Manually repeating these tests is costly and time consuming. Once created, automated tests can be run over and over again at no additional cost and they are much faster than manual tests. Automated software testing can reduce the time to run repetitive tests from days to hours. A time savings that translates directly into cost savings.  

Un-attended mode execution: There is no need of human intervention for the execution of entire Test Automation Suite for regression testing.  But, to achieve the unattended mode execution, the automation framework has to be properly designed. 

Repeatable: The test suite can be executed multiple times on the application under test.  For example, if there is a need to test the application on different browsers and environments, we need to just change the configurations of the test automation suite and execute. In case of manual execution, we would need one more resource to execute the same set of test cases on different environment / browser. 

Re usability: The test suite can be built in such a way that the functions or methods written are highly reusable across the framework.  Also, the entire test suite built with a proper framework can also be utilized for different versions of the application under test. 

Higher Overall Test Coverage: Through the implementation of automated tests, more number of tests can be executed pertaining to an application. This leads to a higher coverage that in a manual testing approach, would imply a massive team limited heavily with their amount of time. An increased test coverage leads to testing more features and a higher quality of application. 

Earlier Detection of Defects: The documentation of software defects becomes considerably easier for the testing teams. This helps increase the overall development speed while ensuring correct functionality across areas. The earlier a defect is identified, the more cost-effective it is to fix the glitch. 

Thoroughness in Testing: Testers tend to have different testing approaches, and their focus areas could vary due to their exposure and expertise. With the inclusion of automation, there is a guaranteed focus on all areas of testing, thereby assuring best possible quality. 

Conclusion
The above benefits would definitely help you to improve your testing processes with the help of the leading automated testing tools. Most of the trial version of these tools come with limited functionality. So, you would need to purchase their license to experience the whole lot of features and benefits of test automation.

Have you experienced any of the above benefits in automated testing? Do have another set of benefits that falls under test automation? Kindly share it with me, I am all ears!



Comments

Popular posts from this blog

How to connect ALM from Excel VBA

How promising is a software testing career?

Is test automation a good career to take?