Lecture
Testing the installation is aimed at verifying successful installation and configuration, as well as updating or uninstalling software.
Currently, the most common software installation with installers (special programs that themselves also require proper testing , which is described in the section "Features of installer testing.").
In the real world installers may not be. In this case, you will have to install the software yourself, using the documentation in the form of instructions or readme files, describing all the necessary steps and checks step by step.
In distributed systems, where the application is deployed on an already running environment, a simple set of instructions may be small. For this, often, a deployment plan is written ( Deployment Plan ), which includes not only the installation steps of the application, but also roll-back steps to the previous version, in case of failure. The installation plan itself must also go through a testing procedure to avoid problems during delivery to actual operation. This is especially true if the installation is performed on systems where every minute of downtime is a loss of reputation and a large amount of funds, for example: banks, financial companies or even banner networks. Therefore, testing the installation can be called one of the most important tasks to ensure the quality of the software.
It is such an integrated approach with the writing of plans, step-by-step verification of the installation and rollback of the installation, which can rightfully be called installation testing or Installation Testing .
An installer is a "regular" program, the main functions of which are Installation (Installation), Update and Uninstall (Uninstall) software.
Proverbial wisdom is well known to everyone: “They meet according to their clothes, but they escort according to their minds” . The installation application is the very clothes that create the first impression of your product. That is why testing the installation is one of the most important tasks.
Being an ordinary program, the installer has a number of features, among which the following should be noted:
If these features do not charge you seriously for testing installation programs, then I want to give a small list of risks that will show the full significance of the correct work of the installers :
At the same time, as with any program, some functional requirements are imposed on the installer . Combining them with a list of features, we get a more complete picture showing the amount of upcoming work on testing. And further, based on the list of requirements, you will need to answer the questions: "What to test in installation programs?", And only then - "How to test the Installation?".
In most cases, the installer is an application in the form of a wizard (Wizard), which may have specific requirements, recommendations for testing of which are discussed in the section: "Testing the installation wizard (Installation Wizard)"
With the modern abundance of personal computers, servers and operating systems, the need has arisen to install the same software on different platforms. To do this, installers need to understand what and where they install, depending on the environment. Some recommendations on this type of testing are discussed below in the section "Cross-platform testing of installers"
Let us write in more detail, "What?" you need to check to assess the correctness of the installer:
Taking advantage of the recommendations on "What to test in installation programs?", Consider " How to test installations? ".
Smart people wrote: "Wizards are evil." You can agree with this or not, but you still have to test them. The following test plan for installation wizard is proposed:
I would like to single out a separate item cross-platform testing of installers , which must necessarily be carried out for all three functions - installation, update and removal:
To simplify the testing procedure, it is recommended to create a table where the columns will be the required configurations, and the lines - test cases (test cases) or test functions. In the process of testing at the intersection of columns and lines, fill in the result, which will be able to visually show the progress of testing and compliance with the "cross-platform" requirements. We now proceed directly to the description of the test:
A case from practice : "The application must be closed for installation on Windows Vista. We launch it, the program thinks and gives a message that this version will not work under this OS. That's right, click OK. After that, the computer thinks for a couple of seconds and reports the following : "The application has been incorrectly completed. Let's try to run it in compatibility mode? "We agree and start. Our application automatically starts again, but this time it is put" with a bang. "We do not know what and how Vista is doing there, but we had to redo the protection code."
A case of practice : "For some drivers, there is a dependency on the file system on which the OS runs. More precisely, for some types of errors. There was a case when everything worked fine on NTFS, and on FAT32 the OS could not rise after installing the software. The reason was incorrect write when you install the driver in the registry. "
Comments
To leave a comment
Quality Assurance
Terms: Quality Assurance