All IT Courses 50% Off
Selenium Tutorials

Introduction to Automation Testing

Manual Testing Vs Automation Testing

Manual Testing is the most primitive process of manually identifying the bugs in the software systems. As the name suggests, manual testing is performed by a human sitting in front of a system and carefully executing test steps as designed in a manual test case. A newly developed application must be tested manually first before automation testing is done. The primary goal of Manual Testing is to ensure that the application is error-free and is working accordingly based on the requirements.

On the other hand, automation testing is the method of using automation tools to write and execute test cases on the software application. An automation testing tool will execute the test steps, compare the expected results with the actual results, and determine if the step is passed or failed.

What is Automation Testing?

Any activity or task performed by using an automation tool is called Automation Testing. Automation Testing is a type of Software Testing where testers execute test cases using automation tools. Test Automation mainly focuses on replacing manual human intervention with devices. Because automation testing is performed through an automation tool like Selenium, QTP, Load Runner, it takes less time in exploratory tests and takes more time in maintaining test scripts.

Why and When to Automate

  1. When repeated test case execution is required
  2. When frequent regression testing is needed
  3. Reduce the Human Effort
  4. When the same application needs to test on multiple environments
  5. User Acceptance Tests
  6. Can share faster feedback to the developers

Different Automation Tools

In the present market, we have different automation tools

  1. Selenium
  2. RFT
  3. QTP
  4. SOA Test
  5. Silk Test

RFT, QTP, Silk Test and SOA Test are Licensed tools and whereas Selenium is an open-source tool.

All IT Courses 50% Off

Advantages of Automation Testing

  1. It reduces the cost of testing
  2. It reduces test execution time 
  3. Reporting is the essay to share the result reports generated by tool which have total no of test executed, passed and failed.
  4. Reusability of scripts on other applications having similar functionality
  5. More software releases are expected
  6. Consistency and Effectiveness( Can run the scripts at any time and any number of times)
  7. It enormously increases the 100% test coverage
  8. It allows us to test our application from different perspectives.

Disadvantages of Automation Testing

  1. Debugging the test script is a major issue. If any error occurs in the test script, it may lead to deadly consequences.
  2. Proficiency is needed to write the automation test scripts.
  3. Maintenance of test data is difficult.
  4. Maintenance of test is costly in case of playback methods. Even when a minor change occurs in the GUI, the test script has to be recorded or should be replaced by a new test script.
  5. Testers should have basic programming knowledge
  6. Testers should have experience in writing automation test scripts.

Advantages of Test Automation over Manual Testing

  1. Saves time and human effort
  2. Improves test accuracy
  3. It offers full test coverage
  4. Maintenance cost is reduced
  5. Increases in test case efficiency
  6. Increases test execution speed
  7. Reduces manual intervention

When to automate an application

  1. Requirements which do not change frequently
  2. Once the application is steady
  3. When have sufficient time
  4. Large and serious projects
  5. Projects which need to test the same areas often

Different testing tools available in Automation testing

Below are the tools which can help us in Automation Testing

  1. Selenium
  2. QTP( Quick Test Professional)
  3. LoadRunner
  4. SilkTest
  5. Watir
  6. IBM RFT(Rational Functional Tester)

Test Automation Life Cycle

The Automation life cycle has the following phases

Introduction to Automation Testing

Test Automation Feasibility Analysis

In this phase, you check if the application can be automated or not. As all applications can’t be automated due to its limitations and we need to select the appropriate tool that fits your requirement.

Test Strategy

In this phase, you choose the right test automation framework. There are various kinds of frameworks to choose and each framework has its own significance.

  1. Linear Scripting Framework
  2. Modular Framework
  3. Hybrid Testing Framework
  4. Data-Driven Testing Framework
  5. Keyword Driven Testing Framework

Test Environment Set Up

Upon choosing the framework, the next is to set up the test environment and gather the required hardware and software resources to execute the automated test cases.

Test Script Development

In this phase, you start developing the automation test scripts. Framework development is the most important for any test automation project. The developed scripts are written should be well-structured, reusable and well documented.

Test Case Execution

In this phase, you execute the test cases.

Test Result Generation

In this last phase, results are analyzed and defects are logged in the test management tool.

Automation Testing Approaches

There are three general approaches to test automation

    1. Code-driven Testing: This method is popularly used in agile software development. It mainly focuses on test case execution in order to find out if the various sections of code are performing as per expectations or not. In this testing classes and modules are tested with a variety of input arguments to ensure that the results that are returned are correct.
    2. Graphical User Interface (GUI) testing: Using this approach we can test the applications that have GUIs. Testers can record the actions performed by the user and analyze them any number of times. Test cases can be written in any programming languages like Java, C#, Python, Ruby, Perl.

 

  • Test Automation Framework: Framework is a platform for developing software applications. It is used to produce beneficial results in the automated testing activity.

Conclusion

If testing is frequently needed then we should go for automation testing, otherwise, we can go for manual testing. The right selection of automation tools, proper testing process, and right testing team selection are the key players in playing automation testing to be successful.

Facebook Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Related Articles

Back to top button