What is receipt?
The recipe is the operation by which the customer acknowledges that the product delivered by the supplier complies with his order, that he is usable in his information system and that it can be made available to end users.
In general, receipt is broken down into two main stages:
- A preparatory phase Consisting in establishing a test plan, materialized by a recipe notebook. Each activity is integrated into the project schedule to guarantee its smooth running.
- A test execution phaseallowing to reassemble all bugs and anomalies. An assessment is carried out to improve the next test battery.
To know
We distinguish:
- There provisional recipewhich consists in checking that the product delivered corresponds to the specifications of the contract signed with the customer.
- There permanent recipecarried out later, which consists in verifying that the software works well under conditions close to its operational use.
What is a test notebook?
THE test book (also called recipe notebook) is a document that brings together all the elements useful for project management of the computer project.
There is no universal rule for Write a recipe notebook. Nevertheless, this document generally follows the following structure:
- The presentation of the project : context, objectives, designation of the project project manager and other managers …
- The prerequisites for the recipe : perimeter and environment of tests, teams involved, distribution of missions …
- The list of tests : exhaustive description of the different tests to be carried out.
The different types of software tests
The management of a development project involves carrying out a multitude of tests, which can be of different natures. Here are the most frequent.
Unit tests
The aim of unit tests is to test the different components, classes or modules of the software separately, in order to ensure that each element works as expected.
Also called component tests, they are quite simple to automate and can be executed very quickly via a continuous integration server.
Integration tests
Integration tests aim to check the proper functioning of interactions and the interface between the different components. For example, they make it possible to test the interaction of an element with a database.
For these tests to be achievable, several components of the application must be operational: their implementation is therefore a little more expensive.
Functional tests
THE Functional test techniques focus on the business requirements of software. Concretely, they are not interested in the intermediate states of the system when carrying out an action, because they only check the output of this action.
These tests require several operational components capable of interacting: this is why they are sometimes confused with integration tests. However, they go more in depth than the latter.
For example, an integration test allows you to check the interaction of an item with a database. On the other hand, a functional test makes it possible to obtain a specific value of the database and to compare it with the business requirements of the product.
Acceptance tests
Acceptance tests make it possible to verify that the system is in line with the business process of the customer. To perform them, the application must therefore be fully operational.
They can be carried out by developers by simulating user behavior, but also by users themselves (for example, as part of a beta test).
Responding to technical specifications does not necessarily mean satisfying end users. Indeed, the client's specifications are sometimes incomplete, without forgetting the ergonomics problems that can affect experience. THE user acceptance tests So make it possible to ensure that the product corresponds well to expectations.
Note
An agile method or a V method do not generate the same test methodologies and do not imply the customer in the same way.
The quality of tests: a major issue
Insufficient tests and the lack of qualification of testers are among the most frequent causes of the poor quality of software. Indeed, if good test practices are known in theory, they are not always applied in the field.
To remedy this, using good test tools is not enough: DSI information systems management must focus on team training. In this area, ISTBQ certification (International Committee for the Software Test) has established itself as a real reference worldwide.
More specifically, the organization offers three levels of certification:
- THE fundamental level Allows you to obtain the title of certified tester: realization of tests throughout the software life cycle, static techniques, test design, test management, test tools …
- THE advanced level is made up of three distinct modules, each with their own examination: test manager, test analyst and test technical analyst.
- THE Expert level Addresses the most advanced test techniques.