fbpx
Java

Software testing: Automating installations and functional tests

Every code change bears the risk of causing undesired side effects that lead to error states in the software. In order to find such errors at an early stage (and not only in production), automated tests must validate both previous functionality and new functionality of the software.

First, the project goals (vision) and a rough roadmap should be defined. The necessary budget must not be neglected here. As expected, the effort involved in developing fully automated tests is much higher at the beginning of the project than later during operation. However, a certain “background noise” always remains, as test results have to be evaluated, test cases adapted, and new test functionalities implemented.

After the procedures and processes of the software to be tested have been clearly defined, the tools and frameworks are selected. Subsequently, the first prototypes should be presented in a kick-off in order to create acceptance for the tools used.

Automated software testing — an introduction

After successfully building the (new) software, the test automation is automatically started with the software version to be tested. In the case of installable software, this must be done without manual intervention in so-called “silent mode.” By the way, most software installers offer a “response file.” A response file is a text file that contains the corresponding dialogs and inputs that the user specified when installing for the first time.

The software is then automatically set up and parameterized, and the correct functioning of applications, services, browser, GUI, etc. is tested. If the software product to be tested supports different platforms (Unix, Linux, Windows), all of these operating systems must be tested, at best in parallel and in a nightly run. In this way, long-running tests can be carried out efficiently, the utilization of hardware resources is better distributed, and the test results are available in the morning for further analysis.

If a large number of tests run in parallel on several different test systems, then the use of a virtual computer system, or virtual machine (VM), is recommended. If you do not want to use your own hardware, cloud computing is an interesting alternative. Here, the IT resources that are needed are also provided.

Copyright © 2022 IDG Communications, Inc.

Related Articles

Leave a Reply

Your email address will not be published.

Back to top button
KQ Education Group