Assignment 1.3: Three Different Definitions

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 the 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 criteria of the user’s requirements. 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 the test cases) to optimize their use of resources.

 

Sentence Definition:

Automation testing is a software testing technique in which a developer computationally runs the test case by automating steps using software tools or frameworks. This testing technique is characterized by minimized human involvement and extensive use of technologies in the process.

 

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 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 automation testing work flow look like?

Figure 1. A visualized work flow of automation testing

 

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 labor by humans is much slower and more expensive than work by computer, developers can gain benefits from automated testing by extensively reducing the time and cost that are 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 adopt 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.

 

References:

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

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.

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

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.

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

 

Leave a Reply

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

*