Skip to content

Commit 76a92b7

Browse files
process: verification guide for types and methods (#721)
close #497 Signed-off-by: Philipp Ahmann <[email protected]> Co-authored-by: aschemmel-git <[email protected]>
1 parent 5006e77 commit 76a92b7

File tree

7 files changed

+382
-20
lines changed

7 files changed

+382
-20
lines changed

docs/platform_management_plan/software_verification.rst

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -161,8 +161,8 @@ method is to be used as meta data (*TestType* and *DerivationTechnique*).
161161
- structural-statement-coverage
162162
- 1, -, -
163163
- QM & ASIL B
164-
* - Structural Condition Coverage (Code coverage)
165-
- structural-condition-coverage
164+
* - Structural Branch Coverage (Code coverage)
165+
- structural-branch-coverage
166166
- 1, -, -
167167
- QM & ASIL B
168168
* - Walkthrough
@@ -437,11 +437,26 @@ the software test strategy and corresponding processes.
437437
The main build environment of the project is based on `Bazel <https://bazel.build>`__. It it used to build software
438438
components, documentation, and automated tests.
439439

440-
.. rubric:: GoogleTest
440+
.. rubric:: GoogleTest (gtest)
441441

442-
The software components of the project written in C++ are tested with the help of
442+
The software components of the project written in C++ are unit tested with the help of
443443
`GoogleTest <https://google.github.io/googletest/>`__.
444444

445+
.. rubric:: gcov/gcovr
446+
447+
The structural coverage reached by unit testing in the project is evaluated by the gcov/gcovr tool chain
448+
`gcovr <https://github.com/gcovr/gcovr>`__ - gcov is part of the GNU compiler collection (gcc).
449+
450+
Note that gcov/gcovr supports several coverage metrics:
451+
452+
- "statement" - used in S-CORE for the structural-statement-coverage method
453+
- "decision" - used in S-CORE for the structural-branch-coverage method
454+
- "branch" - used in S-CORE to support manual analysis of the code coverage if the "decision"
455+
coverage is reported as "cannot be determined" by the tooling. As the "branch" coverage on target
456+
is determined by the tool as object code coverage and as the compiler adds object branches for
457+
fast evaluation of complex conditions in decisions, this is more than required by the
458+
structural-branch-coverage method.
459+
445460
.. rubric:: Integration Testing Framework (ITF)
446461

447462
The integration of software components can be verified with the help of the ITF. It allows the definition and execution

docs/process/process_areas/implementation/guidance/implementation_checklist.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,10 @@ Checklist
5353
-
5454
* - IMPL_01_02
5555
- Are the SOLID design principles applied?
56-
- The Unit Design shall archieve the following principles:
57-
Correct order of excecution of the functions,
56+
- The Unit Design shall achieve the following principles:
57+
Correct order of execution of the functions,
5858
consistency of the interfaces between the units,
59-
correctness of data flow and data controll between the units,
59+
correctness of data flow and data control between the units,
6060
simplicity, readability and comprehensibility, robustness,
6161
suitability for modifications, verifiability
6262
-

docs/process/process_areas/verification/guidance/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,4 @@ Guidance
2626
verification_templates
2727
verification_plan_template
2828
verification_report_template
29+
verification_methods

docs/process/process_areas/verification/guidance/verification_guideline.rst

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,4 +130,7 @@ useful, this shall be planned and added to the project milestone plan.
130130
Verification types and methods
131131
------------------------------
132132

133-
Verification types and methods are described in the :need:`doc_concept__verification__process`.
133+
Verification types and methods are described in the :need:`gd_meth__verification__methods` and the
134+
derivation techniques in :need:`gd_meth__verification__derivation`. The detailed method guideline
135+
helps to get an understanding what the different methods and derivation techniques mean and how to
136+
create test cases using the same.

0 commit comments

Comments
 (0)