As a requirements manager I want the traceability report to show the fraction of the number of items in one level (of the tracing policy) which fulfill the tracing policy, divided by the total number of items in that level (of the tracing policy). The fraction shall be shown as percentage.
Example: If the tracing policy is: Tests --(trace to)--> Requirements, then the report shall show the fraction of requirements which are covered by at least one test, divided by the total number of requirements.
As a requirements manager I want lobster-pkg to print a warning for lobster-traces in <DESCRIPTION> and <VALUE> nodes which are not extracted (due to wrong XML node or path properties).
If no input files are specified, the tool might inadvertently use the current working directory (or any other default value for these configuration parameters) as the location to search for input files.
Some non-relevant *.pkg files or *.ta files are consumed. For example, some items are extracted from files which are not specified as input by the user (but which could be found in the same folder as the specified input files).
No warning is issued for lobster-traces which do not fulfill the conditions of the requirements [[Trace_in_Test_Step_Node]] and [[Trace_in_Analysis_Node]].
The test shall verify that the lobster-pkg tool exits with a non-zero return code when the pkg files do not exist. Example: Verify that the lobster-pkg tool throws an error when a non-existent pkg file is provided.
The test shall verify that the lobster-pkg tool exits with a non-zero return code when the pkg/ta files are invalid XML. Example: Verify that the lobster-pkg tool throws an error when an invalid pkg/ta file is provided.
The test shall verify that the lobster-pkg tool extracts the correct items from the pkg/ta files. Example: Verify that the lobster-pkg tool extracts all relevant items from the provided pkg/ta files.
The test shall verify that the lobster-pkg tool does warn user about misplaced traces in pkg/ta files. Example: Verify that the lobster-pkg tool processes pkg/ta files with misplaced traces and that a warning is issued in the console output.
Test steps: - Provide a PKG or TA XML file with <VALUE> or <DESCRIPTION> nodes containing "lobster-trace:REQUIREMENT_ID" but placed outside the valid locations described in [[Trace_in_Test_Step_Node]] and [[Trace_in_Analysis_Node]]. - Run the tool and verify that a warning is printed for each misplaced tag, including location information.
The tool SHALL create a LOBSTER output item of type "Activity" for each input file IF the file represents a test case, identified by having an <INFORMATION> node with a <TITLE> child node containing the string "TESTCASE" OR IF a lobster-trace is given in an ANALYSIS block (details see [[Trace_in_Analysis_Node]]).
The following requirements describe how to fill the "refs" attribute of these items.
Note: If no requirements is fulfilled, which describes how to fill the "refs" attribute, then the item SHALL be created with an empty "refs" attribute.
Note: Pay attention to the difference between TESTSTEP and TESTSTEPS!
The tool SHALL extract all tags (marked by "lobster-trace") from <VALUE> nodes from the specified input files WHERE all of the following conditions apply: - The file SHALL be a test case, identified by having an <INFORMATION> node with a <TITLE> child node containing the string "TESTCASE". - The <TESTSTEPS> node is of type "testCase". - The <TESTSTEP> node is the first child node of a <TESTSTEPS> node. - The <TESTSTEP> node is named "TsBlock". - The <VALUE> node is nested inside a <TESTSTEP> node. - The <VALUE> node contains one or more substrings in the format "lobster-trace:<REQUIREMENT_ID>"
The tool SHALL extract all tags (marked by "lobster-trace") from <DESCRIPTION> nodes from the specified input files WHERE all of the following conditions apply: - The <ANALYSISITEM> node is a **direct** child node of a <TRACE-ANALYSIS> node. - The <ANALYSISITEM> node is of type "episode". - The <DESCRIPTION> node is a **direct** child node of an <ANALYSISITEM> node. - The <DESCRIPTION> node contains the substring in the format "lobster-trace:<REQUIREMENT_ID>"
The tool SHALL print a warning for tags in <DESCRIPTION> and <VALUE> nodes which do not match the conditions of the requirements [[Trace_in_Test_Step_Node]] and [[Trace_in_Analysis_Node]].