Documentation in The Testing Process
Documentation in The Testing Process
In a software development project, there is a set of documents associated with each of the phases.
of the life cycle: planning, analysis, design, construction,... We can consider the testing process as
a project that is executed in parallel with the development and in which three major stages can be distinguished:
• Execution of tests.
IEEE 829 proposes a series of documents that fit into the testing stages as follows:
o Incident report.
Although the standard refers to different documents, in practice they do not have to be documents.
separated physicists. Even on many occasions, a large part of the information will not reside in documents, but in
tools aimed at supporting the testing process.
On the other hand, not all projects require the same level of formality in the documentation of the process.
Testing: surely a medical software project will not have the same documentary rigor as one about
the construction of a simple website. Other factors such as the company's culture and politics can influence
the formality of the documentation.
PREPARATION OF TESTS
The preparation phase of the tests is the one that requires the most documentation as it involves defining aspects
like the test schedule, what is to be tested, how it will be tested, on what test environment, etc.
The first step in documenting the testing process is the creation of the test plan.
Test plan
The test plan is the master plan that will guide the testing efforts of a project.
determined. A test plan must consider the following aspects:
• Who will conduct the tests (assign responsibilities) and what resources are needed in terms of
people, software, hardware and training.
• The planning of testing tasks, with their dependencies, schedule, duration, ...
• The types of tests to be performed (component tests, integration tests, etc.) and the chosen techniques for
design the tests, as well as the level of coverage and the exit criteria. That is, the aspects
related to the locality of the tests.
• The main risks to consider, especially the circumstances under which it will stop or will
will restart the testing process.
For example, in a user management module, the following could be test conditions: 'A user
a user can register in the system
The test design specification document helps to determine early on where to
they want to focus testing efforts in such a way that later energies are not wasted in creating cases of
test for elements that are not worth it.
• The specific input data to be used (for example, 'run registration process with name
user 'juan' and password '123').
• The preconditions that must be met before executing the test case. For example, 'The
User with the name 'juan' should not exist in the system.
• Interdependencies between test cases. For example, if there is a test case that successfully creates a
User with the name 'Juan' should be executed after the previous case so that the
preconditions of the first can be met.
• The detailed steps on how to execute each test and the order of execution.
For example, a testing procedure could contain instructions such as the following:
• Step 2: Load users into the database using the script 'usuarios.sql'.
• Etc.
Test registration
A fundamental objective of the testing process is to provide information about the system being tested.
testing. The test log documents the aspects related to the execution of the tests: what tests have been
executed, who and when executed them, in what order, in what environment, whether the test has passed or failed. In
this document is also important, to associate the execution information of each test with versions
specific to the software under test to ensure traceability.
The information collected in the test registry allows us to understand the progress of the execution phase of
tests and make decisions about whether the software is ready to move on to the next phase.
Incident report
It is important to highlight the reference to the term "incident"; an incident does not necessarily have to be due to a
System defect. An incident represents a discrepancy between expected results and actual results.
obtained. This discrepancy may be due to several reasons, such as a defect, an error in the specification of
test cases, a misinterpretation of the requirements, etc.
The incident report must contain all the necessary information for the identification and resolution of the
used entries, expected results, obtained results, procedural step in which it
it has produced the incident, environment configuration, impact assessment,…
NOTE: The currently valid version of the IEEE 829 standard is IEEE 829-2008 published in July 2008.