Skip to main content

LOBSTER Tool for ISO C/C++

Project description

LOBSTER

The Lightweight Open BMW Software Traceability Evidence Report allows you to demonstrate software traceability and requirements coverage, which is essential for meeting standards such as ISO 26262.

This package contains a tool extract tracing tags from ISO C or C++ test code. The tracing tags are identified by searching for configurable markers in the comments above the test code.

Tools

This LOBSTER package contains only one tool, lobster-cpptest. It can be used to extract references from C/C++ tests. The most frequent use case is that, the references point to requirements. But lobstser-cpptest is agnostic to that, and the references can point to any kind of artefact. The references must be given inside a comment above the test case itself.

The resulting *.lobster file will then contain a LOBSTER item per test case. This file can be used to generate a LOBSTER report.

Configuration

The tool requires a YAML configuration file to define its settings. You must provide this file when running the tool to specify parameters to process.

Usage

This tool supports C/C++ code. For this your C/C++ tests must have a documentation with markers: They can either be @requirement, @requiredby or @defect. Here is an example:

/**
 * @requirement CB-#1111, CB-#2222,
 *              CB-#3333
 * @requirement CB-#4444 CB-#5555
 *              CB-#6666
 */
TEST(RequirementTagTest1, RequirementsAsMultipleComments) {
  // your test implementation here
}

You can also provide parameters to specify which markers should be extracted from which files. Additionally, you need to provide the Codebeamer URL.

Examples:

output:
    component_tests.lobster:
        markers:
        - "@requirement"
        kind: "req"

    unit_tests.lobster:
        markers:
        - "@requiredby"
        kind: "req"

    other_tests.lobster:
        markers: []
        kind: ""

codebeamer_url: "https://codebeamer.com"

You can also include CPP files in the YAML configuration file.

  files:
    - 'path/to/source1.cpp'
    - 'path/to/source2.cpp'

Note: File paths are accepted only in single quotes.

Copyright & License information

The copyright holder of LOBSTER is the Bayerische Motoren Werke Aktiengesellschaft (BMW AG), and LOBSTER is published under the GNU Affero General Public License, Version 3.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bmw_lobster_tool_cpptest-0.12.0-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file bmw_lobster_tool_cpptest-0.12.0-py3-none-any.whl.

File metadata

File hashes

Hashes for bmw_lobster_tool_cpptest-0.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 59d5613316fd08b137e8eaea5a9587e281b4090adeb36f6352bd93846a87334d
MD5 f888bce19b8a74037ed4b76480abd1fd
BLAKE2b-256 66bd5696a7af1320305646faa2f2d462601af1c325bfbb679d35214d374e9bd9

See more details on using hashes here.

Provenance

The following attestation bundles were made for bmw_lobster_tool_cpptest-0.12.0-py3-none-any.whl:

Publisher: package.yml on bmw-software-engineering/lobster

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page