Assignment 1.3 – Revised Definition of Automation Testing

Title: Revised Definition of Automation Testing – Assignment 1.3

Date: February 15, 2023

Author: Byung-Sun Park

 

Introduction:

This assignment aims to write three different definitions of a relatively complex term used in a particular discipline. In this assignment, the writer will introduce a parenthetical definition, a sentence definition, and an expanded definition of the technical term to non-technical readers who do not have a background in the specific discipline in which the term is used.

 

Complex Term: Automation Testing

 

Target Audience and Reading Scenario:

The target audiences of this assignment are non-technical students who have recently learned software programming but do not have experience in formal software testing methodologies. After software developers implement the system, they must properly test their software to ensure that the result meets all user requirements criteria. By reading three different definitions of a technical term, automation testing, audiences will have a better idea of how to optimize the testing process of their software.

 

Parenthetical Definition:

As modern software systems become large and complex, more companies adopt automation testing (a software testing technique that uses software tools to automate test cases) to optimize their use of resources.

 

Sentence Definition:

Automation testing is a software testing methodology in which a developer or tester computationally runs the test case by automating test steps using software tools or frameworks.

 

Expanded Definition:

Operating Principle – How does automation testing work?

In order to test the entire software product, testers need to ensure that their testing process covers all possible ranges of user requirements. Since modern software systems have become large and complex, it takes a lot of time and cost for human testers to check all the requirements one by one. In general, computers are much faster in calculations that involve complex operations. By adopting automation testing, developers computationally run the test case by automating test steps using software tools or frameworks rather than manually checking and executing test cases one by one. If developers decide to adopt automation testing in their validation process, they first need to define the scope of test automation: what parts of their product can be automated. Then, they will select the appropriate software tools or frameworks that can help them automate test cases. Finally, they will design and implement the automation program to be used in their testing process.

 

Visual – How does the workflow for automation testing work?

Figure 1: A visualized workflow of automation testing

Source: “Test Automation Strategy – How to Implement It in 2020.” UTOR, 11 Oct. 2021, https://u-tor.com/topic/test-automation-strategy.

The steps in Figure 1 visualizes the flow of adopting automation testing described in the Operating Principle section. To transform the manual test cases into an automated test suite, developers can follow the steps below:

  1. Decide what manual test cases to automate
  2. Decide what software tools and frameworks to use
  3. Review and confirm everything is ready before entering the implementation phase
  4. Plan, design, and develop the test suite
  5. Execute and maintain the test suite
  6. Review the test result after execution

The important fact from Figure 1 is that the steps are cyclic. After completing the last step, developers revisit the first step and do all the steps again to improve the quality of the test suite continuously. This cyclic process is called the automation testing life cycle.

 

Comparison and Contrast – How does automation testing differ from Manual Testing?

Automation testing is a software testing methodology in which a developer computationally runs the test cases by automating test steps to reduce human involvement. In contrast, Manual testing is a software testing technique in which a human tester manually checks and executes all test cases one by one. The steps of the manual testing process are similar to how end-users use the product that they are testing. Since human labor is much slower and more expensive than work done by computers, developers can benefit from automated testing by extensively reducing the time and cost that were previously required from human testers in manual testing.

 

Examples – How is automation testing applied?

Automation testing has been used in various fields of software testing. The most common example is UI (User Interface) testing. For example, human testers needed to manually enter all different combinations of user id and password one by one to test log-in buttons on the website before they adopted automation testing. With automation testing, developers can just run the automated testing program. Then, the program will generate all the possible inputs of id and password, try logging in to the website using generated inputs, and return the test report with the number of passed and failed cases.

 

Required Conditions – What is needed to make automation testing work?

The important fact about automation testing is that the software tools and frameworks that are used in automation testing are also the software. That means that these software tools can also have issues and bugs. To make automation testing valid, developers need to ensure that the software tools and frameworks they will use to automate tests are not buggy and complete because it does not make sense to use buggy software tools to test and validate the other software.

 

Works Cited in MLA:

Atlassian. “DevOps Test Automation.” Atlassian, https://www.atlassian.com/devops/devops-tools/test-automation.

Atlassian. “Automated Software Testing for Continuous Delivery.” Atlassian, https://www.atlassian.com/continuous-delivery/software-testing/automated-testing.

Dijkstra, Bas. “Why It’s (Still) so Difficult for Testers to Learn Test Automation.” TechBeacon, TechBeacon, 19 June 2021, https://techbeacon.com/app-dev-testing/why-its-still-so-difficult-testers-learn-test-automation.

Hamilton, Thomas. “What Is Automation Testing? Test Tutorial.” Guru99, 11 Jan. 2023, https://www.guru99.com/automation-testing.html.

TestProject. “Effective Performance Testing Management.” TestProject, 16 Nov. 2022, https://blog.testproject.io/2022/10/20/effective-performance-testing-management/.

Leave a Reply

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

*