ISTQB Chapter 1 - Fundamentals of Testing - Keywords Flashcards
Sourced from the ISTQB glossary page. https://istqb-glossary.page/
Coverage
The degree, expressed as a percentage, to which a specified coverage item has been exercised by a test suite.
Test coverage is defined as a technique which determines whether our test cases are actually covering the application code and how much code is exercised when we run those test cases. If there are 10 requirements and 100 tests created and if 90 tests are executed then test coverage is 90%.
Debugging
The process of finding, analyzing and removing the causes of failures in software.
When dynamic testing (see chapter 4) triggers a failure, debugging (a non-testing activity) is concerned with finding causes of this failure (defects), analyzing these causes, and eliminating them. The typical debugging process in this
case involves:
* Reproduction of a failure
* Diagnosis (finding the root cause)
* Fixing the cause
When static testing identifies a defect, debugging is concerned with removing it. There is no need for reproduction or diagnosis, since static testing directly finds defects, and cannot cause failures (see chapter 3 of the ISTQB Syllabus).
Testing and debugging are separate activities. Testing can trigger failures that are caused by defects in the software (dynamic testing) or can directly find defects in the test object (static testing).
Defect
A flaw in a component or system that can cause the component or system to fail to perform its required function, e.g., an incorrect statement or data definition. A defect, if encountered during execution, may cause a failure of the component or system.
Defects can be found in documentation, such as a requirements specification or a test script, in source code, or in a supporting artifact such as a build file. Defects in artifacts produced earlier in the SDLC, if undetected, often lead to defective artifacts later in the lifecycle. If a defect in code is executed, the system may fail to do what it should do, or do something it shouldn’t, causing a failure. Some defects will always result in a failure if executed, while others will only result in a failure in specific circumstances, and some may never result in a failure.
Error
A human action that produces an incorrect result.
Failure
Deviation of the component or system from its expected delivery, service or result.
Testing can trigger failures that are caused by defects in the software (dynamic testing) or can directly find defects in the test object (static testing).
If a defect in code is executed, the system may fail to do what it should do, or do something it shouldn’t, causing a failure.
Quality
The degree to which a component, system or process meets specified requirements and/or user/customer needs and expectations.
Quality Assurance
Part of quality management focused on providing confidence that quality requirements will be fulfilled.
QA is a process-oriented, preventive approach that focuses on the implementation and improvement of
processes. It works on the basis that if a good process is followed correctly, then it will generate a good
product. QA applies to both the development and testing processes, and is the responsibility of everyone
on a project.
Root Cause
A source of a defect such that if it is removed, the occurrence of the defect type is decreased or removed.
A root cause is a fundamental reason for the occurrence of a problem (e.g., a situation that leads to an error). Root causes are identified through root cause analysis, which is typically performed when a failure occurs or a defect is identified. It is believed that further similar failures or defects can be prevented or their frequency reduced by addressing the root cause, such as by removing it.
Test Analysis
The process of analyzing the test basis and defining test objectives.
Test analysis includes analyzing the test basis to identify testable features and to define and prioritize associated test conditions, together with the related risks and risk levels (see section 5.2). The test basis and the test objects are also evaluated to identify defects they may contain and to assess their testability. Test analysis is often supported by the use of test techniques (see chapter 4). Test analysis answers the question “what to test?” in terms of measurable coverage criteria.
Test Case
A set of input values, execution preconditions, expected results and execution postconditions, developed for a particular objective or test condition, such as to exercise a particular program path or to verify compliance with a specific requirement.
ISTQB defines a test case as a set of preconditions, inputs, actions (where applicable), expected results, and post-conditions, developed based on test conditions. Test cases are step-by-step instructions to the tester to perform validation of specific aspects of the system or application functionality.
Test Basis
(Syllabus and Joy):
All documents from which the requirements of a component or system can be inferred. The documentation on which the test cases are based. If a document can be amended only by way of formal amendment procedure, then the test basis is called a frozen test basis.
(Google):
To design test case we need information about system behavior. We call this the test basis and it can consist of, for example, the system requirements, the functional design, the user manual and/or the administrative procedures. The end product of the test design are the test cases.
Test Completion
The activity that makes test assets available for later use, leaves test environments in a satisfactory condition and communicates the results of testing to relevant stakeholders.
Test completion activities usually occur at project milestones (e.g., release, end of iteration, test level completion) for any unresolved defects, change requests or product backlog items created. Any testware that may be useful in the future is identified and archived or handed over to the appropriate teams. The test environment is shut down to an agreed state. The test activities are analyzed to identify lessons learned and improvements for future iterations, releases, or projects (see section 2.1.6). A test completion report is created and communicated to the stakeholders.
Test Condition
An item or event of a component or system that could be verified by one or more test cases, e.g., a function, transaction, feature, quality attribute, or structural element.
Test Control
A test management task that deals with developing and applying a set of corrective actions to get a test project on track when monitoring shows a deviation from what was planned.
Test Data
Data that exists (for example, in a database) before a test is executed, and that affects or is affected by the component or system under test.
Test Design
The process of transforming general test objectives into tangible test conditions and test cases.
Test design includes elaborating the test conditions into test cases and other testware (e.g., test charters). This activity often involves the identification of coverage items, which serve as a guide to specify test case inputs. Test techniques (see chapter 4) can be used to support this activity. Test design also includes defining the test data requirements, designing the test environment and identifying any other required infrastructure and tools. Test design answers the question “how to test?”.