L.O.B.S.T.E.R.

Lightweight Open BMW Software Traceability Evidence Report
!

Overview

Coverage

Category Ratio Coverage OK Items Total Items
Use Cases 0.0% 0.00% 0 5
Potential Errors 100.0% 100.00% 6 6
Test Specifications 100.0% 100.00% 5 5
System Requirements 0.0% 0.00% 0 11
Software Requirements 0.0% 0.00% 0 0
Code 0.0% 0.00% 0 10
System Tests 68.6% 68.57% 24 35
Software Tests 0.0% 0.00% 0 0

Tracing policy

LOBSTER Tracing Policy n_1cf7e301510c711b73d2b182b9dcf084 Use Cases n_8a4b9a55ec70e0ca32d3abcc64ac6879 Potential Errors n_1cf7e301510c711b73d2b182b9dcf084->n_8a4b9a55ec70e0ca32d3abcc64ac6879 n_419cfc02b324dc7d8faefa90ed608fb0 System Requirements n_1cf7e301510c711b73d2b182b9dcf084->n_419cfc02b324dc7d8faefa90ed608fb0 n_eeb09e7009c699f439a0daadf03458e7 Test Specifications n_8a4b9a55ec70e0ca32d3abcc64ac6879->n_eeb09e7009c699f439a0daadf03458e7 n_3f7ae1d4bec7e6d318ef39c7a7dcaa65 System Tests n_eeb09e7009c699f439a0daadf03458e7->n_3f7ae1d4bec7e6d318ef39c7a7dcaa65 n_9d273bd32c1fceb91b7d6a4d40e98bdd Software Requirements n_419cfc02b324dc7d8faefa90ed608fb0->n_9d273bd32c1fceb91b7d6a4d40e98bdd n_419cfc02b324dc7d8faefa90ed608fb0->n_3f7ae1d4bec7e6d318ef39c7a7dcaa65 n_ca0dbad92a874b2f69b549293387925e Code n_9d273bd32c1fceb91b7d6a4d40e98bdd->n_ca0dbad92a874b2f69b549293387925e n_c4738e043501e27ee3ef08d6a4883d27 Software Tests n_9d273bd32c1fceb91b7d6a4d40e98bdd->n_c4738e043501e27ee3ef08d6a4883d27

Filtering

Item Filters

Show Issues

Filter

Issues

Detailed report

Requirements and Specification

Use Cases

lobster/use_cases.trlc
TRLC Usecase UseCases.List_Requirements_to_Tests
As a requirements manager I want the traceability report to show the list of
requirements which are covered by tests.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Usecase UseCases.List_Requirements_without_Tests
As a requirements manager I want the traceability report to show the list of
requirements which are not covered by tests.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Usecase UseCases.List_Tests_to_Requirements
As a requirements manager I want the traceability report to show the list of
tests covering requirements.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Usecase UseCases.List_Tests_without_Requirements
As a requirements manager I want the traceability report to show the list of
tests which are not covering any requirement.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Usecase UseCases.Item_Coverage
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.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC

Potential Errors

lobster/tools/json/requirements/potential_errors.trlc
TRLC Potentialerror UseCases.Too_few_Extraction_from_JSON_Test_Files
Some JSON test files or test cases within JSON files are ignored during extraction.
For example, some JSON test files are ignored while extracting reference data.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Potentialerror UseCases.Too_few_requirement_reference_Extraction_from_JSON_test
Some requirement references from tests in JSON files are ignored.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Potentialerror UseCases.Too_many_Extraction_from_JSON_Test_Files
Some non-relevant JSON test files are consumed.
For example, some test are extracted from files which are not relevant.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Potentialerror UseCases.Too_many_requirement_reference_Extraction_from_JSON_test
Some fake requirement references from tests in JSON files are extracted.
For example: While extracting requirement references from a test case, an additional reference is considered
with partial data from previous requirement reference.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Potentialerror UseCases.Output_Despite_Missing_Config_File_json
The user does not provide a valid path to a configuration file,
but the lobster-json tool generates valid output nevertheless, potentially based on
irrelevant JSON files.
For example, the lobster-json tool might consider the current working directory
as source of JSON files, and these do in fact contain links to real requirements,
such that lobster-report would compute a non-zero coverage value.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Potentialerror UseCases.Output_Despite_Config_File_Error_json
The user provides an invalid configuration file, but the lobster-json tool
generates valid output nevertheless, potentially based on
irrelevant JSON files.
This includes cases where the config file:
- contains invalid YAML syntax (e.g., incorrect indentation, missing colons, or other formatting errors),
- is missing required keys or attributes,
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC

Test Specifications

lobster/tools/json/requirements/test_specifications.trlc
TRLC Testspecification UseCases.Incorrect_Number_of_JSON_Tests_in_Output
The test shall verify that all input JSON files are consumed.
The tests from the input files shall be available in the actual output.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Testspecification UseCases.Incorrect_number_of_requirement_refs_in_JSON_Output
The test shall verify all the requirement references from all the input JSON files are consumed.
The requirements references from all the input files shall be available in the actual output.

example : If a test case contains requirement references 'A' & 'B' in a JSON test file,
then test shall verify output file contains requirement references 'A' & 'B'.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Testspecification UseCases.JSON_Config_File_Missing
The test shall verify that the lobster-json tool exits with a non-zero return code when the config file does not exist.
Example: Verify that the lobster-json tool throws an error when a non-existent config file is provided.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Testspecification UseCases.JSON_Config_File_Syntax_Error
The test shall verify that lobster-json tool exits with a non-zero return code when the config file contains a syntax error.
Example: Verify that lobster-json throws an error when a config file with invalid JSON is provided.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC Testspecification UseCases.JSON_Config_File_Key_Error
The test shall verify that lobster-json tool exits with a non-zero return code when the config file is missing required keys.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC

System Requirements

lobster/tools/json/requirements/input_files.trlc
TRLC System_requirement_aspect json_req.Input_File
IF a list element given through the command line option "FILE_OR_DIR" is a file

(Note: Symbolic links shall be resolved.
The tool shall not differentiate between symbolic links and true paths.)
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC System_requirement_aspect json_req.Input_File_Valid_JSON
AND IF the file content is invalid JSON,
THEN the tool shall exit with a non-zero return code.
Issues:
  • missing up reference
  • missing reference to Software Requirements
  • missing reference to System Tests
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC System_requirement_aspect json_req.Input_File_Input_Items
OTHERWISE the input data
SHALL be written in the LOBSTER interchange format
Issues:
  • missing up reference
  • missing reference to Software Requirements
  • missing reference to System Tests
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC System_requirement_aspect json_req.Input_File_To_File
to the file given in the command line option "out",
IF that option is given AND is not an empty string;
Issues:
  • missing up reference
  • missing reference to Software Requirements
  • missing reference to System Tests
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC System_requirement_aspect json_req.Input_File_To_Stdout
OTHERWISE to STDOUT.
Issues:
  • missing up reference
  • missing reference to Software Requirements
  • missing reference to System Tests
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC System_requirement_aspect json_req.Input_File_Output_Error
IF the operating system fails to fully serialize the output to a file,
THEN the tool shall print an error message to STDERR and exit with a non-zero return code.
Issues:
  • missing up reference
  • missing reference to Software Requirements
  • missing reference to System Tests
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC System_requirement json_req.Input_File_JSON_Extension
IF [[Input_File]]
AND IF the file extension is not "json" (case-insensitive),
THEN the tool shall print a warning.
Issues:
  • missing up reference
  • missing reference to Software Requirements
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
lobster/tools/json/requirements/input_not_file_not_directory.trlc
TRLC System_requirement json_req.Input_Not_File_Not_Directory
IF a list element given through the configuration file under "inputs" is not a file nor a directory,
THEN the tool shall exit with a non-zero return code.

Note: This could happen if a path does not exist.
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
lobster/tools/json/requirements/synthetic_name.trlc
TRLC System_requirement json_req.Name_Attribute_Given
In addition to [[Parse_Input_File]],
IF the command line option "name-attribute" is given and not an empty string,
AND the input items contains that key
THEN the tool SHALL use the value of that key as tag in the serialized LOBSTER item.
Issues:
  • missing up reference
  • missing reference to Software Requirements
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC System_requirement_aspect json_req.Name_Attribute_Given_Key_Missing
OTHERWISE (if they key does not exist)
the tool SHALL print an error message.
Issues:
  • missing up reference
  • missing reference to Software Requirements
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
TRLC System_requirement_aspect json_req.Name_Attribute_Missing
OTHERWISE ("name-attribute" is not given or not an empty string), the tool
SHALL create a synthetic tag name based on the path of the JSON input file and an item counter.

Notes:
- "Synthetic" means that, the name does not need to be related to the data.
- The item counter does not need to be unique across input files,
but it shall be unique at least for each input file separately.
- No further specification is made about how to combine the path and the item counter.
Issues:
  • missing up reference
  • missing reference to Software Requirements
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC

Software Requirements

No items recorded at this level.

Implementation

Code

lobster/tools/json/json.py
Python Constructor json.Malformed_Input.__init__
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Function json.get_item
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Function json.syn_test_name
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Constructor json.LOBSTER_Json.__init__
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Method json.LOBSTER_Json.get_config_keys_manual
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Method json.LOBSTER_Json.get_mandatory_parameters
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Method json.LOBSTER_Json.process_commandline_and_yaml_options
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Method json.LOBSTER_Json.process_tool_options
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Method json.LOBSTER_Json.process
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
Python Function json.main
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC

Verification and Validation

System Tests

tests_system/lobster_json/lobsterjsontestrunner.py
PyUnit Test lobsterjsontestrunner.LobsterJsonTestRunner.run_tool_test:92
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_config_exceptions.py
PyUnit Test test_config_exceptions.ConfigParserExceptionsLobsterJsonTest.test_missing_config_file_parameter:15
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_config_exceptions.ConfigParserExceptionsLobsterJsonTest.test_missing_config_file:25
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_config_exceptions.ConfigParserExceptionsLobsterJsonTest.test_config_file_errors:38
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_config_exceptions.ConfigParserExceptionsLobsterJsonTest.test_config_file_empty:49
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_directories.py
PyUnit Test test_directories.InputDirectoryJsonTest.test_missing_directory:14
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_directories.InputDirectoryJsonTest.test_empty_directory:28
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_directories.InputDirectoryJsonTest.test_consumes_files_in_specified_directory:45
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_directories.InputDirectoryJsonTest.test_mix_inputs_from_directory:66
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_input_not_file_not_directory.py
PyUnit Test test_input_not_file_not_directory.InputNotFileNotDirectoryTest.test_nothing_exists:31
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_input_not_file_not_directory.InputNotFileNotDirectoryTest.test_one_file_exists:41
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_inputs_and_inputs_from_file.py
PyUnit Test test_inputs_and_inputs_from_file.InputsAndInputsFromFileParameterTest.test_inputs:19
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_inputs_and_inputs_from_file.InputsAndInputsFromFileParameterTest.test_inputs_from_file:39
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_inputs_and_inputs_from_file.InputsAndInputsFromFileParameterTest.test_consume_files_from_cwd:55
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_inputs_and_inputs_from_file.InputsAndInputsFromFileParameterTest.test_consume_files_and_nested_directory_from_cwd:73
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_inputs_and_inputs_from_file.InputsAndInputsFromFileParameterTest.test_inputs_from_file_and_input:96
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_json_extension.py
PyUnit Test test_json_extension.JsonExtensionTest.test_single_non_json_extensions:15
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_json_extension.JsonExtensionTest.test_mixed_extensions:33
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_json_extension.JsonExtensionTest.test_invalid_json_content:52
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_json_extension.JsonExtensionTest.test_inputs_and_inputs_from_files_with_mixed_extension:60
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_justification_attribute.py
PyUnit Test test_justification_attribute.JsonJustificationAttributeTest.test_justification_attribute_given:14
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_justification_attribute.JsonJustificationAttributeTest.test_justification_attribute_given_but_key_missing:30
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_justification_attribute.JsonJustificationAttributeTest.test_justification_attribute_not_given:47
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_multiple_files.py
PyUnit Test test_multiple_files.JsonMultipleFilesTest.test_multiple_input_files_specified_in_config:15
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_multiple_files.JsonMultipleFilesTest.test_directory_with_empty_invalid_file:46
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_multiple_files.JsonMultipleFilesTest.test_inputs_from_file_specified_in_config:66
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_multiple_files.JsonMultipleFilesTest.test_inputs_and_inputs_from_file_With_extra_valid_files:95
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_name_attribute.py
PyUnit Test test_name_attribute.JsonExtensionTest.test_attribute_given:16
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_name_attribute.JsonExtensionTest.test_attribute_given_but_key_missing:31
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_name_attribute.JsonExtensionTest.test_name_attribute_missing_flat_input:48
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_name_attribute.JsonExtensionTest.test_name_attribute_missing_nested_input:62
Derived from:
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_tag_attribute.py
PyUnit Test test_tag_attribute.JsonTagAttributeTest.test_tag_attribute_given:12
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_tag_attribute.JsonTagAttributeTest.test_tag_attribute_given_but_key_missing:27
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
PyUnit Test test_tag_attribute.JsonTagAttributeTest.test_tag_attribute_missing:42
Issues:
  • missing up reference
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC
tests_system/lobster_json/test_valid_input.py
PyUnit Test test_valid_input.ValidInputTest.test_input_with_specific_schema:14
Build Reference: main | Timestamp: 2025-09-18 11:06:21+00:00 UTC

Software Tests

No items recorded at this level.

LOBSTER Version: 1.0.2