Project

General

Profile

Core Test Cases

This page lists the tests which must succeed in order to release AF3.

Constraints

  1. Output ports can not be read.
  2. A port cannot have multiple incoming channels.

Online help

  1. Test in final RCP image to be uploaded to the homepage, if the online help is working (Menu > Help > AF3 Help)
  2. Some plugins contribute their own help contents that integrates with the contents provided in the org.fortiss.af3.rcp.application plugin. Test if the links within the following contributed help modules work:
    • DSE / org.fortiss.af3.exploration.ui
      • Where to test
      • What to test
        • Menu > Help > AF3 Help->Code generation, deployment and scheduling synthesis->DSE perspective
        • In particular, if links in dse_perspective.html (not the help menu on the left-hand side) work (e.g, DSE Dashboard, DSE Constraint Modeling, ...)
      • Test, if help button in DSE Perspective works

Hints

Consider using https://eclipse.org/rcptt/: very easy testing tool!

Modeling and simulation Test Cases

Test Case: Model Element Attributes

Precondition:
  • Freshly started AF3
Test Steps:
  1. Create an AF3 project with a Component Architecture with at least one component
  2. Open the Component Architecture
  3. Add a TL Specification (from the Model Elements section) to a component via drag&drop
Postcondition:
  • TL Specification is added to this component (child element of the component in the Model Navigator section)
  • Properties section is available on the bottom of AF3
  • Annotation section is available on the bottom of AF3

Status: Running
--------------------------------------------------------------------------------

Test Case: System Architecture Modeling

Precondition:
  • Freshly started AF3
Test Steps:
  1. Create an AF3 project with a Component Architecture with at least one component
  2. Open the Component Architecture
  3. Add two components to this architecture
  4. Connect the components by a channel
Postcondition:
  • Component Architecture is created
  • Two Components are added
  • Components are connected by a channel

Status: Running
--------------------------------------------------------------------------------

Test Case: Data Modeling

Precondition:
  • Freshly Started
Test Steps:
  1. Create an empty AF3 Project
  2. Right-click on the project
  3. Add Data Dictionary to this project
  4. Open Data Dictionary (double-click on it)
Postcondition:
  • Data Dictionary is open
  • Model Elements view allows to add Expressions

Status: Running
--------------------------------------------------------------------------------

Test Case: Creating a Code Specification for a Component

Precondition:
  • Freshly Started AF3
Test Steps:
  1. Create an empty AF3 Project
  2. Add Component Architecture to this Project
  3. Add at least a Component to this Component Architecture
  4. Open Component Architecture
  5. Drag&Drop the Code Specification from Model Elements section onto a Component
  6. Double-click onto this Component
Postcondition:
  • Code Specification view is open
  • It has a return statement already inside

Status: Running


Test Case: Creating a State Automaton

Precondition:
  • Freshly Started AF3
Test Steps:
  1. Create an empty AF3 Project
  2. Add Component Architecture to this Project
  3. Add at least a Component to this Component Architecture
  4. Open Component Architecture
  5. Drag&Drop the Automaton Specification from Model Elements section onto a Component
  6. Double-click onto this Component
Postcondition:
  • State Automaton view is open
  • It has an Init state already inside

Status: Running


Test Case: Creating a Mode Automaton

Precondition:
  • Freshly Started AF3
Test Steps:
  1. Create an empty AF3 Project
  2. Add Component Architecture to this Project
  3. Add at least a Component to this Component Architecture
  4. Open Component Architecture
  5. Drag&Drop the Mode Switch Specification from Model Elements section onto a Component
  6. Double-click onto this Component
Postcondition:
  • Mode Automaton view is open
  • It has an Init state already inside

Status: Running


Test Case: Creating a State Automaton

Precondition:
  • Freshly Started AF3
Test Steps:
  1. Create an empty AF3 Project
  2. Add Component Architecture to this Project
  3. Add at least a Component to this Component Architecture
  4. Open Component Architecture
  5. Drag&Drop the Mode Switch Specification from Model Elements section onto a Component
  6. Double-click onto this Component
Postcondition:
  • Mode Automaton view is open
  • It has an Init state already inside

Status: Running


Test Case: Creating a Simple Table Specification

Precondition:
  • Freshly Started AF3
Test Steps:
  1. Create an empty AF3 Project
  2. Add Component Architecture to this Project
  3. Add at least a Component to this Component Architecture
  4. Open Component Architecture
  5. Drag&Drop the Simple Table Specification from Model Elements section onto a Component
  6. Double-click onto this Component
Postcondition:
  • Table Specification Editor is open

Status: Running


Test Case: Creating a Advanced Table Specification

Precondition:
  • Freshly Started AF3
Test Steps:
  1. Create an empty AF3 Project
  2. Add Component Architecture to this Project
  3. Add at least a Component to this Component Architecture
  4. Open Component Architecture
  5. Drag&Drop the Advanced Table Specification from Model Elements section onto a Component
  6. Double-click onto this Component
Postcondition:
  • Table Specification Editor is open

Status: Failed! ( Editor is completely empty)


Test Case: Defining a Platform Architecture

Precondition:
  • Freshly Started AF3
Test Steps:
  1. Create an empty AF3 Project
  2. Add a Plattform Architecture to this Project
  3. Open the Plattform Architecture
  4. Drag&Drop Generic_ECU onto the canvas
  5. Drag&Drop Generic_Bus onto the canvas
  6. Drag&Drop a Generic_Actuator onto the Generic_ECU
  7. Drag&Drop a Generic_Sensor onto the Generic_ECU
  8. Drag&Drop a Generic_BusController onto the Generic_ECU
  9. Drag&Drop a Generic_BusController onto the Generic_Bus
  10. Draw a connection between the Generic_BusController contained by Generic_Bus and the one contained by the Generic_ECU
Postcondition:
  • Platform Architecture contains at least a Generic_ECU and a Generic_Bus
  • Generic_ECU contains at least a Generic_Actuator, a Generic_Sensor and a Generic_BusController
  • Generic_Bus contains at least a Generic_BusController
  • Generic_ECU and Generic_Bus are connected to each other via Generic_BusController

Status: Running


Test Case: Open the Simulation

Precondition:
  • Freshly Started AF3
  • ACC Example is loaded
Test Steps:
  1. Right-click onto Component Architecture in the Model Navigator View
  2. Select the Run Simulator entry
Postcondition:
  • Simulation View is opened

Status: Running


Test Case: Open the Co-Simulation

Precondition:
  • Freshly Started AF3
  • ACC Example is loaded
Test Steps:
  1. Right-click onto Component Architecture in the Model Navigator View
  2. Select the Co-Simulation Specification entry
Postcondition:
  • Co-Simulation View is opened

Status: Running


Test Case: Creating a Library Entry

Precondition:
  • Freshly Started AF3
Test Steps:
  1. Click the L+ icon on the top-left of AF3 to create a Library (cf. user documentation)
  2. Add a New Package to the library
  3. Switch back to the Projects by clicking on the L symbol
  4. Create a Component Architecture with at least a Component
  5. Open Component Architecture
  6. Right-Click on the Component and choose the Add to Library entry
  7. Select the appropriate Package
Postcondition:
  • Library entry is visible in the Model Element Section

Status: Running


Test Case: Creating a Refinement

Precondition:
  • Freshly Started AF3
  • New Project is created
Test Steps:
  1. Right-click on the Project
  2. Select the Refinement entry
Postcondition:
  • A Refinement is added to the Project

Status: Running


Test Case: Code Generation

Precondition:
  • Freshly Started AF3
  • ACC Example is loaded
Test Steps:
  1. Right-click on the Deployment in the Model Navigator
  2. Select the Deployment Generator Entry
  3. Select AF3-Project-Directory as target folder and click Ok
  4. Switch to Storage View (right top in AF3)
Postcondition:
  • In the Navigator view two Folders are created (HeadUnitECU & PowertrainECU)
  • Those folders contain source files

Status: Running


Test Case: Add DSE

Precondition:
  • Freshly Started AF3
  • ACC Example is loaded
Test Steps:
  1. Right-click on the Project in the Model Navigator
  2. Select the DSE Entry
Postcondition:
  • DSE Node is added to the Project

Status: Running


Test Case: DSE Perspective

Precondition:
  • Freshly Started AF3
  • ACC Example is loaded
  • DSE Node is added to the Project
Test Steps:
  1. Switch to the DSE Perspective (right-top corner)
  2. Click on Synthesis icon and select Deployment Synthesis
  3. Click the Generate button
  4. Click on the Visualisation icon
  5. Select the Table view from the Visualisation methods
Postcondition:
  • At one generated Deployment is visible

Status: Running


Test Case: Safety Argumentation Package

Precondition:
  • Freshly Started AF3
  • New Project is created
Test Steps:
  1. Right-click onto the project
  2. Select Safety Argumentation Package
Postcondition:
  • Safety Argumentation Package is added to the Project

Status: Running


Test Case: Safety Argumentation Package

Precondition:
  • Freshly Started AF3
  • New Project is created
Test Steps:
  1. Right-click onto the project
  2. Select Safety Argumentation Package
Postcondition:
  • Safety Argumentation Package is added to the Project

Status: Running