loader image

Use Cases

Requirements-based Testing

Requirements-based Testing for Simulink, TargetLink, EmbeddedCoder and handwritten code

Terminology

What is Requirements-
based testing?

Requirements-based testing (sometimes also called functional testing) is a test methodology that ensures  a system-under-test (e.g. a software unit) correctly implements its requirements. Test cases and test objectives are derived from the requirements and implemented in a language that allows their execution on the system-under-test.

 

Requirements-based testing is typically a very time consuming task. Not only because of the manual effort required to create the test cases, but more importantly because  result traceability, coverage analysis  and creating a test harness are real challenges which often require a hodgepodge of poorly-integrated tools.

BTC EmbeddedPlattform

Requirements-based Testing with BTC EmbeddedTester BASE

BTC EmbeddedTester BASE provides a direct integration with Simulink, dSPACE TargetLink, and Mathworks Embedded Coder, making it the perfect tool for testing models and production code. For projects working with handwritten C code, a test project that includes  features like stub code generation and automatic call-graph analysis can be easily created. For larger models, sub-functions can be tested independently without the need for modifying the model.

Features like flexible test authoring, built-in connection to requirements management tools and the integrated coverage analysis make BTC EmbeddedTester BASE a one-stop solution for requirements-based testing of models and production code.

BTC EmbeddedPlattform

Requirements Traceability

Managing the traceability between tests and requirements is often a challenge, especially when requirements are changing. Instead of relying on error prone exchange formats like Excel or ReIF, BTC EmbeddedPlatform provides a reliable direct API based connection to popular requirements management tools like IBM DOORS, Siemens Polarion, PTC Integrity, CodeBeamer or JAMA.

In addition to requirements, it is even possible to synchronize test cases and simulation results for accessing test status information on project level directly in our ALM/PLM tool.

In case a requirement gets modified, BTC EmbeddedPlatform will highlight the requirement as well as the linked test cases. A powerful DIFF view allows the user to examine the changes and update the test cases if needed.

Requirements Traceability, Requirements-based Test

Automatic Test Generation with Generative AI

With our brand new BTC AI Assistant, you can harness the power of generative AI to create functional test cases directly from your natural language requirements. This innovative tool allows you to streamline your testing process by converting plain language descriptions into precise and executable test cases, saving you time and reducing the potential for human error.

The BTC AI Assistant also includes an integrated chatbot, designed to enhance your interaction with the generated test cases. This chatbot allows you to ask questions about the test cases, providing clarity and insights into their structure and functionality. Moreover, you can provide additional information or make adjustments to the test cases through the chatbot, ensuring they remain up-to-date and aligned with your evolving requirements

BTC TestComposer

Smart and powerful test authoring

In our experience, test cases are too often written in languages which were not designed for that purpose. Examples are scripting languages like Matlab or Python, Excel tables or even C code.

With BTC TestComposer we provide a powerful editor for functional test cases directly within BTC EmbeddedTester BASE. BTC TestComposer knows all details about the test architecture and protects users against invalid data entry. If enumerations are used, a drop-down menu is provided and allows to directly select the desired values. 

Further features include a signal generator, a graphical viewer, flexible tolerance handling and a formula editor, allowing us to calculate the value of a certain signal based on other variables. „Test Macros“ and „Calibration Sets“ can be used to specify and store reusable sequences, and can be instantiated in multiple test cases. This makes it possible to execute test cases directly within the editor and immediately visualize the results.

Requirements, Model, code

Coverage on all Levels

Requirements Coverage

The requirements coverage report shows, if all requirements are covered by test cases and if the linked test cases are passed on the different execution levels MIL, SIL and PIL

Model Coverage

The model coverage report documents the achieved coverage of a Simulink/Stateflow models. If test cases exist on different subsystem levels of a larger models, the coverage metrics are automatically aggregated for the higher hierarchy levels

Code Coverage

Code coverage is automatically calculated and updated in the background. Create, change, import, or delete a test case? The code coverage report has already been updated to reflect these changes.

For Models and Code

Flexible Debugging

As modern model-based development projects grow in complexity, the task of debugging failed test cases becomes increasingly challenging and time consuming. Even more challenges emerge in situations when the function development and testing are separated and performed by different people or different teams. This leads us to an important question: What is the most efficient way for the test engineer provide his test scenario to the developer?

BTC EmbeddedTester BASE includes a unique debugging approach by generating self-contained sandboxes. These sandboxes contain a copy of the system-under-test as well as the test case incl. the corresponding calibration values. Depending on the use case, this sandbox can either be a Simulink model, a Microsoft Visual Studio project file or a generic code-based sandbox for other IDEs. These sandboxes can be easily shared with colleagues or customers and make it easy to try out modifications without harming the original files.

Play now
Debugging_start-2
Play now
Debugging_start-2

certified

ISO 26262

BTC EmbeddedPlatform (incl. BTC EmbeddedTester BASE, BTC EmbeddedTester, BTC EmbeddedSpecifier and BTC EmbeddedValidator) has been certified by German TÜV Süd as fit for usage in safety critical software development projects.

The certificate addresses different standards including ISO 26262, IEC 61508-3:2010, ISO 25119, IEC 62304 as well as EN 50716.

For the automotive standard ISO 26262, we have been certified with the highest tool confidence level TCL and the certificate is valid for all ASIL levels including ASIL D.

We provide the certificate and the corresponding report to our customers free of charge upon request, which almost eliminates any effort for tool qualification measures on the customer side.

ISO 26262 Certificate

Evaluierungs Lizenz

Sie möchten unsere Tools in Ihrer Entwicklungsumgebung testen? Gerne stellen wir Ihnen eine kostenfreie Evaluierungslizenz zur Verfügung., inkl. Kick-Off Trainings-Workshop und Support durch unser Team.

Buchen Sie ein Meeting mit unserem Engineering Team

Sie haben Fragen oder Interesse an einer persönlichen Tool Demo? Nutzen Sie unten stehenden Link, um ein unverbindliches Meeting mit unserem Engineering Team zu buchen.

Evaluierungs Lizenz

Sie möchten unsere Tools in Ihrer Entwicklungsumgebung testen? Gerne stellen wir Ihnen eine kostenfreie Evaluierungslizenz zur Verfügung., inkl. Kick-Off Trainings-Workshop und Support durch unser Team.

Buchen Sie ein Meeting mit unserem Engineering Team

Sie haben Fragen oder Interesse an einer persönlichen Tool Demo? Nutzen Sie unten stehenden Link, um ein unverbindliches Meeting mit unserem Engineering Team zu buchen.

BTC EMBEDDED SYSTEMS BLOG

From our Blog

Sharing insights on embedded software development, model-based design, automatic code generation and ISO 26262 compliant testing.

PRODUCT VIDEOS, VIDEO BLOG & WEBINARS

Videos & Webinars

Discover some of the main features of our products in these short videos.

BTC EmbeddedTester BASE

Requirements-based Testing for Simulink, TargetLink, Embedded Coder and handwritten code.