Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
Immer folgende Konstellation:
Leader ID = 1
Follower1 ID = 2
Follower2 ID = 3
Hausaufgabe bis zum nächsten Gruppentreffen:
Alle Test Cases als ausführbaren Test implementieren, sodass man auswählen kann in welcher der drei Rollen (Follower1, Follower2, Leader) der Test gestartet wird.
Test 1:
Ziel: Teste CREATE mit einem Follower.
1. Leader geht in CREATE Zustand
2. Follower1 geht in CREATE Zustand
3. Erwarte, dass beide nun im RUNNING Zustand sind.
Test 2:
Ziel: Teste den Empfang des ersten Platoon-Config Updates.
1. Schritte von Test 1.
2. Leader schickt als erste Platoon Config {PS=1.0, IPD=10.0}.
3. Erwarte dass Follower1 diese Config erhält.
Test 3:
Ziel: Teste, ob Platoon-Config Updates schnell genug empfangen werden.
1. Schritte von Test 2.
2. Leader schickt im Broadcast Interval neue Platoon Config Updates und folgendermaßen:
Sei c_i die letzte gesendete Config, dann ist
c_i+1.PS = ci.PS + 0.1 und
c_i+1.IPD = ci.IPD + 1.0
3. Erwarte bei Follower1, dass im Abstand von Broadcast Interval +- 10ms, die entsprechenden Updates erhalten werden.
Test 4:
Ziel: Teste, ob Broadcast Timeout funktioniert.
1. Schritte von Test 2.
2. Leader sendet 1s nachdem er im RUNNING Zustand ist keine Broadcast Nachrichten mehr.
3. Erwarte, dass Follower1 nach Broadcast Timeout den Platoon verlässt.
Test 5:
Ziel: Teste, ob Heartbeat Timeout funktioniert.
1. Schritte von Test 2.
2. Follower1 sendet 1s nachdem er im RUNNING Zustand ist keine Heartbeat Nachrichten mehr.
3. Erwarte, dass Leader nach Heartbeat Timeout den Platoon auflöst.
Test 6:
Ziel: Teste, ob Leave Platoon Message funktioniert.
1. Schritte von Test 2.
2. Follower1 sendet 1s nachdem er im RUNNING Zustand ist eine Leave-Platoon Nachricht (FV_LEAVE).
3. Erwarte, dass Leader den Platoon auflöst.
Test 7:
Ziel: Teste 2 Follower ohne Leader.
1. Follower1 geht in CREATE Zustand.
2. Follower2 geht in CREATE Zustand.
3. Erwarte, dass sich nach 5s immer noch niemand im RUNNING Zustand befindet.
Test 8:
Ziel: Teste Platoon mit Leader und 2 Follower.
1. Leader geht in CREATE Zustand.
2. Follower1 geht in CREATE Zustand.
3. Follower2 geht in CREATE Zustand.
4. Leader sendet Platoon-Config Updates
c_1 = {PS=1.0, IPD=10.0}
c_2 = {PS=1.1, IPD=11.0}
c_3 = {PS=1.2, IPD=12.0}
5. Erwarte, dass Follower1 und Follower2 c_1, c_2, c_3 innerhalb von 1s nach Übergang in RUNNING Zustand erhalten.
Test 9:
Ziel: Teste, dass Leader den Platoon nicht auflöst, wenn nur einer der zwei Follower den Platoon verlässt.
1. Leader geht in CREATE Zustand
2. Follower1 geht in CREATE Zustand.
3. Follower2 geht in CREATE Zustand.
4. Follower1 sendet 1s nachdem er im RUNNING Zustand ist eine Leave-Platoon Nachricht (FV_LEAVE).
5. Erwarte, dass Follower2 und Leader immer noch im Platoon sind.