Workflow Automation

In modern development projects, automation is a key factor to reduce the development effort, ensure a reproduceable process and thereby increase the quality. Many of the use cases addressed with BTC EmbeddedPlatform like Automatic Test Generation, Regression Tests, Back-to-Back Tests or even Formal Verification require no user interaction and can be fully automated. BTC EmbeddedPlatform offers multiple ways to configure and execute a completely automated test workflow, either via API or on a workflow level via the Test Automation Add-On, which even provides an integration with Jenkins.

MATLAB API

BTC EmbeddedPlatform offers a complete MATLAB API that can be used to invoke basically any action that can be done in the user interface. The MATLAB API provides a very detailed level of access and is ideal for users that are comfortable with writing MATLAB scripts. Customers often use the MATLAB-API to integrate an established workflow into already existing MATLAB-based toolchains and benefit from a great deal of flexibility.

Test Automation Add-On

The BTC EmbeddedPlatform Test Automation Add-On allows you to configure test steps on a workflow level. A powerful XML-based configuration controls which steps are executed and which settings should be considered. You can either use a graphical user interface to create a workflow via drag-and-drop or use the provided XML templates that can be adapted programatically.

During the execution of a test workflow the respective steps are added to a summary report that provides an overview of the workflow, displays status information and links to the detailed results of each step.

Integration with Jenkins

On the same workflow level, you can also choose to automate your test steps from Jenkins. A powerful Jenkins Pipeline plugin teaches Jenkins Pipelines to communicate with BTC EmbeddedPlatform, create and execute test workflows allowing you to benefit from the countless management capabilities that Jenkins provides. You can easily configure Jenkins to automatically choose the right machines for a BTC EmbeddedPlatform test job or to execute your tests on a timed schedule or triggered by SCM commits.

During the execution, the live status is displayed in Jenkins providing you instant access to results, generated artifacts and reports. For each run of a test workflow Jenkins displays any changes that have entered the SCM system since the last run. If a test suddenly fails, you can easily identify what has changed (model/code, tests, configuration, etc.). For each run, BTC EmbeddedPlatform returns results in the standard JUnit XML format which is automatically parsed and interpreted by Jenkins and can contribute to test trend charts or overview dashboards.

An overview report is available in Jenkins for each run. It shows the executed workflow steps providing a status, important meta information and links to any detail reports.