Verify Requirements and Address Missing Traceability
In this step, you verify requirements by running linked tests using the MATLAB Test Manager. You view the requirements verification status in the Code Quality Dashboard, then use a traceability matrix to identify requirements that are not linked to tests.
Open the MATLABShortestPath
project.
openProject("MATLABShortestPath");
Verify Requirements and View Verification Status
Open the Code Quality Dashboard.
codeQualityDashboard
Run all tests in the project by clicking the Run button. View the requirements verification status in the Requirements section.
Identify Missing Traceability
The Requirements section indicates that some requirements in the project are not linked to tests. Identify missing traceability for the requirements by creating a traceability matrix with the requirement sets on the top and the tests on the left.
mtxOpts = slreq.getTraceabilityMatrixOptions; mtxOpts.topArtifacts = ["shortest_path_func_reqs.slreqx",...; "shortest_path_tests_reqs.slreqx","shortest_path_demo_reqs.slreqx"]; mtxOpts.leftArtifacts = ["graph_unit_tests","tDemoSmokeTest"]; slreq.generateTraceabilityMatrix(mtxOpts)
In the Filter Panel, in the Top section, filter the matrix to show only the functional requirements not linked to tests by clicking:
Top > Link > Missing Links
Top > Type > Functional
In the Left section, show only the test functions in the graph_unit_tests
file by clicking:
Left > Type > Function
Left > Attributes > Test
Highlight the rows and columns that do not have links by clicking Highlight Missing Links in the toolstrip.
Address Missing Traceability
The test requirement 2.1.3, Test for a graph that is a tree
, is not linked to a test. A tree is a graph in which any two nodes are only connected by one path.
The test case check_invalid_start_1
tests a tree graph by using the graph_straight_seq
static method to create the adjacency matrix. Use the
graph_straight_seq
method to view the tree graph.
A = graph_unit_tests.graph_straight_seq; G = graph(A); plot(G,EdgeLabel=G.Edges.Weight)
Create a link from the Test for a graph that is a tree
requirement to the check_invalid_start_1
test case by using the traceability matrix you previously generated.
slreq.generateTraceabilityMatrix(mtxOpts)
Click the cell that corresponds to the requirement and the test and select Create. In the Create Link dialog box, click Create.
Save the link set that contains the links for shortest_path_tests_reqs
.
reqSetFile = "shortest_path_tests_reqs.slreqx";
myLinkSet = slreq.getDependentLinkSets(reqSetFile);
save(myLinkSet);
Update the requirements verification status in the Code Quality Dashboard by clicking the three-dot icon in the Requirements section and selecting Run Tests and Refresh Data.
The percentage of passed requirements increases.