Skip to content

Test Cases

Rebekka Lohse edited this page Jun 1, 2023 · 8 revisions

Since there are no automatic tests for our project, we have decided to set up a manual test list. These test cases can be used to check the functionality of the code before pushing onto the main branch. The order of test is as follows: isolated tests, import/ export tests and then interaction tests.

Explanation of Terms

Fragment Model

Step Action Desired Result
01 create a start event using the "Create StartEvent" Button from the panel Start event exists
02 create an intermediate/ boundary event using the "Create Intermediate/ Boundary Event" Button from the panel Intermediate/ Boundary event exists
03 create a gateway using the "Create Gateway" button from the panel Gateway exists
04 create an activity using the "Create Task" button from the panel Activity exists
05 create a data object reference using the "Create DataObjectReference" button from the panel Data object reference exists
06 create the class "Class 0" using the drop down menu of the data object reference and select this class Data object reference has the class "Class 0"
07 create the state "State 0" using the drop down menu of the data object reference and select this state Data object reference has the state "State 0"
08 close the drop down menu by clicking outside of all objects Drop down menu disappears

Data Model

Step Action Desired Result
09 change to Data Model in Data Model
10 create a class using the "Create Class" button from the panel class exists
11 name this class "Class 1" by clicking on the class class is called "Class 1"
12 connect a new class with Class 1 using the "Link with new object" button from the context pad of Class 1 second connected class exists
13 name the new class "Class 2" new class is called "Class 2"
14 create a new class using the "Create Class" Button from the panel class exists
15 name this class "Class 3" by clicking on the class class is called "Class 3"
16 connect Class 2 and Class 3 using the "Link object to other objects" button from the context pad of Class 2 Class 2 and Class 3 are connected
17 create a new class using the "Create Class" Button from the panel class exists
18 name this class "Class 4" by clicking on the class class is called "Class 4"
19 connect Class 3 and Class 4 using the "Associate Classes" button from the panel Class 3 and Class 4 are connected
20 delete Class 4 * Class 4 ist gone (including all connections)

Objective Model

Step Action Desired Result
21 change to Objective Model in Objective Model
22 create an objective using the "Create Objective" button from the panel object exists
23 create a class called "Class 4" using the dropdown menu and select it object is off Class 4
24 create an instance called "Instance 1" using the dropdown menu and select it object is Instance 1
25 create a state called "State 1" using the dropdown menu and select it object is in State 1
26 create a new object using the "Link with new object" button from the context pad of Instance 1 second object exists
27 select for this object also Class 4 and name it "Instance 2" new object is called "Instance 2"
28 create a new objective using the "Create Objective" button from the panel third object exists
29 select for this object also Class 4 and name it "Instance 3" new object is called "Instance 3"
30 connect Instance 2 and Instance 3 using the "Link object to other objects" button from the context pad of Instance 2 Instance 2 and Instance 3 are connected
31 create a new objective using the "Create Objective" button from the panel fourth object exists
32 select for this object Class 1 drop down has no instances for this class
33 create "Instance 1" for this object and select it new object is called "Instance 1"
34 delete Instance 3 Instance 3 is gone
35 create a new objective called "Objective 2" using the drop down menu Objective 2 exists and is empty

Termination Condition

Step Action Desired Result
36 change to Termination Condition in Termination Condition
37 add a new statement using the + button statement for Class 1 exists
38 select State 1 statement "Class 1 [State 1] exists
? ? ?

Dependency Model

Step Action Desired Result
39 change to Dependency Model in Dependency Model
40 connect Start State and Objective 2 Start State and Objective 2 are connected
41 create a new objective using the "Append Objective" button from the context pad of Objective 2 new objective exists
42 name this objective "Objective 3" by double clicking on the objective objective is called Objective 3
43 create a new objective using the "Create Objective" button from the panel another objective exists
44 name this objective "Objective 4" by double clicking on the objective objective is called Objective 4
45 connect Objective 3 and Objective 4 using the "Create Objective" button from the context pad of Objective 3 Objective 3 and Objective 4 are connected
46 delete Objective 3 using ? Objective 3 is gone, all connected edges are gone, Warning is shown

OLC Model

Step Action Desired Result
47 change to OLC Model in OLC
48 create a class called "Class 5" using the dropdown menu and select it Class 5 exists
49 create a new state using the "Create State" button from the panel state exists
50 name this state "State 1" by double clicking on the state state is called State 1
51 create a new state using the "Append State" button from the context pad of State 1 new state exists and is connect to State 1
52 name this state "State 2" by double clicking on the state state is called State 2
53 create a new state using the "Create State" button from the panel state exists
54 name this state "State 3" by double clicking on the state state is called State 3
55 connect State 2 and State 3 using the "Connect" button from the context pad of State 2 State 2 and State 3 are connected
56 create a new state using the "Create State" button from the panel state exists
57 name this state "State 4" by double clicking on the state state is called State 4
58 connect State 3 and State 4 using the "Connect" button from the context pad of State 3 State 3 and State 4 are connected
59 delete State 4 using ? State 4 is gone, all connected edges are gone
? change to different class ?

Import/ Export

Step Action Desired Result
? export the project using the "Save" button the top bar project is exported without any errors
? hard refresh and import the same project using the "Open" button the top bar project is displayed exactly as is was before the export

##Interaction between Models