Review Testing Target Settings before Analyzing Your Model
Conformiq sets by default targets for test generation to cover all requirements, all nodes, all control flows, all data objects (including all alternatives), all conditions, and all combinatorial checkpoints, i.e., generated tests must cover all test targets to achieve 100% coverage.
Targets are set automatically by the tool without analyzing the model if they are actually achievable, i.e., test targets may not be reachable by (even correct) model construction. This is by intent to challenge users to question and verify their model construction since a tool cannot automatically decide what is correct or incorrect. Frequently such unreachable test targets occur when using combinatorial data, i.e., by default all pairs or combinations are target. Another source for “expected” unreachable targets is from activity diagrams that make decision based on state variables. In the latter case the impact on coverage is generally much severe.
The number of default test targets is intentionally quite large since a computer cannot automatically decide if the lack of coverage is “ok by specification” or “an unintentional modelling error”. It is the user who is expected to decide what is correctly a test target and what is not by fine tuning the default settings at any time in Test Targets view, i.e., change targets from “TARGET” to “DON’T_CARE” or “BLOCK”.
Recommendation: Whenever coverage after test generation is less than 100% first review all uncovered test target settings by expanding the nodes in test target view and modify them if required. Set them to “DON’T CARE” in case they are not crucial to your coverage or known to be “invalid” in the case of combinatorial data. |
Recommendation: The “BLOCK” test target setting should only be used by advanced users. Generally, try to use the “DON’T CARE” setting for test targets instead of “BLOCK”. |
Users generally underestimate the impact of a blocked test target on the remainder of the modelcoverage. Blocking a test target automatically makes all model structure and other test targetsfollowing the point of the blocked target unreachable. Use the “BLOCK” setting only if a testcovering this specific target would break your application or clearly generate an invalid test.
Related content
Copyright © 2023 Conformiq and its subsidiaries. All rights reserved.