Installation testing is a check that software application is successfully installed and is working as expected after installation. Though the process of installation testing doesn`t end on receiving message “Installed successfully”. The process goes through the phases like:
- Environment setup
- Installation wizard GUI test
- Prerequisites handling test
- Actual setup test
- Licensing test
- Other available actions test
Let`s pay attention to each one of them and get into some details. In this post take a look at phases of Environment setup, Installation wizard GUI test, Prerequisites handling test.
All the installation tests should be run on a clean machine. Usually, it means the machine with the minimal software package installed. However, if the application will be used in the standardized environment, a tester should reproduce it.
Start with preparing a virtual machine for each supported OS. Using snapshots is a good way to control the process. They provide the ability to unroll the changes. For example, if you test the application requiring .NET Framework and MS SQL Server, the snapshots like these might be necessary
- Clean machine (just after Windows installation)
- All Windows updates installed
- .NET Framework installed
- MS SQL Server installed
- Additional snapshots for hardware requirements test
On this phase, try not to rely on the application uninstaller to go back to the clear machine state as most uninstallers leave some files/folders/settings unremoved. It is always better to use VM snapshots instead.
Installation wizard GUI
Simplicity and transparency are really important for the installation process. The tester should check that installation wizard forces user to set up only the parameters required for the installation and the first application run. E.g., UI language can be chosen in the wizard, while color scheme selection should be deferred to the program’s first run.
Installation wizard usually has the following screens:
- Welcome screen
- License agreement
- Several screens for different options setup
- The last screen informing of successful installation
The screens should be combined and should have the areas of step name, short step description, navigation area and UI elements to input required information.
Apart from that, during the process user should be informed about the results of operations made by the installation program. However, the information should be presented in an understandable way using progress bar and a list of executed operations, error messages and so on.
Prerequisites handling uses two common scenarios. Either the installation program installs all prerequisites by itself or prerequisites are listed and provided with download links.
The stage requires for checking the installation program correctly recognizes already installed prerequisites. Plus, if the prereqs need to be downloaded from the Internet, mind that the redundant downloads significantly increase the installation time. Remember to check that previous versions of prerequisite software are not recognized as correct.
In case some of the prerequisites have versions newer than those listed in the installation wizard test, if it’s possible to install the application along with them and if there are any issues with that. Moreover, if the application has some “negative” prerequisites, i.e., known issues when installed along with some 3rd party software, e.g., antivirus, user should be warned about this before installation starts.
Applying these simple techniques allows the tester to check and improve every single step. Next time we`ll get through the other 3 phases.