T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES...
Transcript of T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES...
![Page 1: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/1.jpg)
TESTING AND ASSESSMENT OF PROTOCOLS AND SYSTEMS MODELED AS EXTENDED FINITE STATE MACHINES
Tariq M. SalamehAdvisor: Dr. Khaled El Fakih30th of June 2013
![Page 2: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/2.jpg)
2
Outlines• Introduction
• Preliminaries – The EFSM Model– EFSM Flow Graph– Data-Flow, Control-Flow Test Suites– EFSM-Based Test Suites
• Mutation Testing• Coverage Assessment of Mutation Testing• Assessing Control-Flow, Data-Flow and EFSM Based Test Suites
– Research Objectives– Assessment Methodology– Experimental Results
• Testing with Respect to Transfer Faults: A Method and an Assessment– Algorithm– Experimental Results
• Conclusion• Future Work
![Page 3: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/3.jpg)
3
INTRODUCTION
![Page 4: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/4.jpg)
4
Introduction
• Test derivation based on formal models is now widely used for deriving test suites for different kinds of systems.
• A well-known model that is widely used to represent the specification of a given software system is called the Extended Finite State Machine (EFSM) model.
![Page 5: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/5.jpg)
5
PRELIMINARIES
![Page 6: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/6.jpg)
6
The EFSM Model
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
predicate complete input complete deterministic
complete
![Page 7: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/7.jpg)
7
Test Cases & Test Suites
• Test Suite– Test Case 1
S0 - ?a/!o(1) – S0
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
w = 0
![Page 8: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/8.jpg)
8
Test Cases & Test Suites (Cont.)
• Test Suite– Test Case 1
S0 - ?a/!o(1) – S0 - ?b/!o(1) – S0
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
w = 1
![Page 9: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/9.jpg)
9
Test Cases & Test Suites (Cont.)
• Test Suite– Test Case 1
S0 - ?a/!o(1) – S0 - ?b/!o(1) – S0 - ?a/!o(2) – S0
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
w = 1
![Page 10: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/10.jpg)
10
Test Cases & Test Suites (Cont.)
• Test Suite– Test Case 1
S0 - ?a/!o(1) – S0 - ?b/!o(1) – S0 - ?a/!o(2) – S0 - ?a/!o(0) – S1
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
w = 2
![Page 11: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/11.jpg)
11
Test Cases & Test Suites (Cont.)
• Test Suite– Test Case 1
S0 - ?a/!o(1) – S0 - ?b/!o(1) – S0 - ?a/!o(2) – S0 - ?a/!o(0) – S1 - ?b/!o(0) – S1
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
w = 0
![Page 12: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/12.jpg)
12
Test Cases & Test Suites (Cont.)
• Test Suite– Test Case 1
S0 - ?a/!o(1) – S0 - ?b/!o(1) – S0 - ?a/!o(2) – S0 - ?a/!o(0) – S1 - ?b/!o(0) – S1
– Test Case 2S0 - ?b/!o(0) – S0
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
w = 0
![Page 13: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/13.jpg)
13
Test Cases & Test Suites (Cont.)
• Test Suite– Test Case 1
S0 - ?a/!o(1) – S0 - ?b/!o(1) – S0 - ?a/!o(2) – S0 - ?a/!o(0) – S1 - ?b/!o(0) – S1
– Test Case 2S0 - ?b/!o(0) – S0 - ?b/!o(0) – S0
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
w = 0
![Page 14: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/14.jpg)
14
Test Cases & Test Suites (Cont.)
• Test Suite– Test Case 1
S0 - ?a/!o(1) – S0 - ?b/!o(1) – S0 - ?a/!o(2) – S0 - ?a/!o(0) – S1 - ?b/!o(0) – S1
– Test Case 2S0 - ?b/!o(0) – S0 - ?b/!o(0) – S0 - ?a/!o(1) – S0
S0 S1
w:=0T1: b / o(w)
T2: a, w<2 / w:=w+1, o(w)
T3: a, w=2 / w:=0, o(w)
T5: a, w>=1 / w:=1, o(w)
T4: b, w<2 / o(w)
w = 0
![Page 15: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/15.jpg)
15
EFSM Flow-Graph
EFSM Flow-Graph is a transformation of EFSM model with notations for variables' Definitions, C-Uses and P-Uses
d0w
0
S0
1 2
?b
!w
?a
C1w
6 3
Pw2-6 Pw
2-3
4C4w,d4
w
!w
7d7w
S1
!w
5C5wC8
w 8
12 9
?a ?b
11 10
Pw9-10Pw
9-11
C11w
!w
14 13
Pw12-13Pw
12-14
15d15w
16C16w
!w
![Page 16: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/16.jpg)
16
Data-Flow, Control-Flow Test Suites
– All-Uses test suite.
d0w
0
S0
1 2
?b
!w
?a
C1w
6 3
Pw2-6 Pw
2-3
4C4w,d4
w
!w
7d7w
S1
!w
5C5wC8
w 8
12 9
?a ?b
11 10
Pw9-10Pw
9-11
C11w
!w
14 13
Pw12-13Pw
12-14
15d15w
16C16w
!w
![Page 17: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/17.jpg)
17
Data-Flow, Control-Flow Test Suites
– All-Uses test suite.– All-Edges test suite.
d0w
0
S0
1 2
?b
!w
?a
C1w
6 3
Pw2-6 Pw
2-3
4C4w,d4
w
!w
7d7w
S1
!w
5C5wC8
w 8
12 9
?a ?b
11 10
Pw9-10Pw
9-11
C11w
!w
14 13
Pw12-13Pw
12-14
15d15w
16C16w
!w
![Page 18: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/18.jpg)
18
Data-Flow, Control-Flow Test Suites
– All-Uses test suite.– All-Edges test suite.– All-Nodes test suite.
d0w
0
S0
1 2
?b
!w
?a
C1w
6 3
Pw2-6 Pw
2-3
4C4w,d4
w
!w
7d7w
S1
!w
5C5wC8
w 8
12 9
?a ?b
11 10
Pw9-10Pw
9-11
C11w
!w
14 13
Pw12-13Pw
12-14
15d15w
16C16w
!w
![Page 19: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/19.jpg)
19
Data-Flow, Control-Flow Test Suites
– All-Uses test suite.– All-Edges test suite.– All-Nodes test suite.– All-Decisions test suite.
d0w
0
S0
1 2
?b
!w
?a
C1w
6 3
Pw2-6 Pw
2-3
4C4w,d4
w
!w
7d7w
S1
!w
5C5wC8
w 8
12 9
?a ?b
11 10
Pw9-10Pw
9-11
C11w
!w
14 13
Pw12-13Pw
12-14
15d15w
16C16w
!w
![Page 20: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/20.jpg)
20
EFSM Test Suites
– Single Transfer Fault (STF) test suite.
S1 S2?a/!o
![Page 21: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/21.jpg)
21
EFSM Test Suites
– Single Transfer Fault (STF) test suite.
– Double Transfer Fault (DTF) test suite.
S1
S3
S2
?a/!o
![Page 22: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/22.jpg)
22
EFSM Test Suites
– Single Assignment Fault (SAF) test suite.
S1 S2?a/{w := 1, !o}
![Page 23: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/23.jpg)
23
EFSM Test Suites
– Single Assignment Fault (SAF) test suite.
– Double Assignment Fault (DAF) test suite.
S1 S2?a/{w := 1, !o}
?a/{w := 2, !o}
![Page 24: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/24.jpg)
24
Mutation Testing• Mutation testing is a mechanism to evaluate and
assess the quality of a test suite and to guarantee its efficiency by checking the coverage of the test suite in terms of number of killed mutants [1].
• Expensive but efficient in fault and error detection [2].
• Cost can be reduced by selecting mutation operators carefully.
[1] Tatiana Sugeta, Jose Carlos Maldonado, and W. Eric Wong, "Mutation Testing Applied to Validate SDL Specifications," LNCS, pp. 193-208, 2004.[2] DeMillo R.A and Offutt A.J, "Experimental results from an automatic test case generator," ACM Trans. Software Engineering, vol. 2, pp. 109–127, 1993.
![Page 25: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/25.jpg)
25
Coverage Assessment of Mutation Testing
• Although Mutant generation was originally proposed as part of a testing strategy, Thevenod-Fosse et al. [3] used it as a method for generating faulty versions for experiments.
• James H. Andews et al. [4] compared four different test suites, Block, C-Use, Decision, and P-Use, in which they found that C-Use and P-Use test suites were able to kill more faulty machines than the others.
[3] P. Thevenod-Fosse, H. Waeselynck, and Y. Crouzet, "An Experimental Study on Software Structural Testing: Deterministic versus Random Input Generation," Proc. 21st Int’l Symp. Fault-Tolerant Computing, pp. 410-417, June 1991.[4] J.H. Andrews, L.C. Briand, Y. Labiche, and A.S. Namin, "Using Mutation Analysis for Assessing and Comparing Testing Coverage Criteria," IEEE Transactions on Software Engineering, vol. 32, pp. 608-624, August 2006.
![Page 26: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/26.jpg)
26
Coverage Assessment of Mutation Testing
• Offutt J. et al. [5] compared four testing criteria, Mutation, Edge-Pair, All-Uses, and Prime Path Coverage:
[5] Li Nan, U. Praphamontripong, and J. Offutt, "An Experimental Comparison of Four Unit Test Criteria: Mutation, Edge-Pair, All-Uses and Prime Path Coverage," Software Testing, Verification and Validation Workshops, 2009. ICSTW '09. International Conference, pp. 220-229, April 2009.
Tests Faults Cost/Benefit
All-uses 362 54 6.7
Mutation 269 75 3.6
![Page 27: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/27.jpg)
27
Coverage Assessment of Mutation Testing
• Frankl et al. compared the effectiveness of All-Uses vs. Mutation Testing in which they found that mutation testing did better than All-Uses [6].
• Kakarla et al. compared between Data-Flow testing and mutation testing [7] in which they found that Data-Flow testing outperformed mutation testing in the number of test cases required (cost), but mutation testing was twice as effective as Data-Flow testing in exposing faults (benefit).
[6] Phyllis G. Frankl, Stewart N. Weiss, and Cang Hu, "All-Uses versus Mutation Testing: An Experimental Comparison of Effectiveness," June 1996.[7] S. Kakarla, S. Momotaz, and A.S. Namin, "An Evaluation of Mutation and Data-Flow Testing: A Meta-analysis," Software Testing, Verification and Validation Workshops (ICSTW), 2011 IEEE Fourth International Conference, pp. 366-375, March 2011.
![Page 28: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/28.jpg)
28
ASSESSING CONTROL-FLOW, DATA-FLOW AND EFSM BASEDTEST SUITES
![Page 29: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/29.jpg)
29
Research ObjectivesEFSM
Compare Mutation Score
STF TSDTF TSSAF TSDAF TS
Transition TourAll-StatesRandom
All-UsesAll-EdgesAll-Nodes
All-Decisions
IUT }M
utan
ts
![Page 30: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/30.jpg)
30
Assessment MethodologyStep 1:
Given EFSM Spec
Step 2.1:Derive Definition/Use
Flow Graph from Spec
Step 2.2:Derive Control-Flow & Data-Flow Test Suites
Step 2.3:Write Derived Test
Suites in JUnit
Step 3.1:Derive EFSM-
Based Test Suites from Spec
Step 3.2:Write Derived Test
Suites in JUnit
Step 4.1:Develop Java Code
Implementations of Spec
Step 4.3:Derive Code Mutants by Using MuClipse
Step 4.2:Select Mutation
Operators
Step 5:Apply derived test suites to derived mutants and
compute mutation scores
![Page 31: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/31.jpg)
31
Considered EFSM Specification• Case Study 1: Initiator [8]
disconnect
wait
connect sending
T5: D
R/IDIS
ind
T2: ICONreq/CR, counter:=1
T4: T, counter >
=4/ IDISind
T7:
DR
/IDIS
ind
T13: DR/IDISind
T14: AK(num), Ak.num==number/Nullnumber := succ(number)
T9: AK(num), Ak.num!=number and counter <4 /DT(number, d)
counter = counter+1
T12: AK
(num), A
k.num!=num
ber and counter >= 4
/IDIS
ind
T10: T, counter<4/DT(number, d)
counter:=counter+1
T11: T, counter>=4
/IDIS
ind
T3: T, counter<4/CRcounter:=counter+1
T6: CC/ICONconfnumber:=1 >
counter:=0, number:=0;d:=0
Initiator EFSM
T8: IDATreq(data)/DT(number, d)counter :=1;
d := IDATreq.data
T1: DR/IDISind
[8] Hogrefe Dieter., "OSI formal specification case study: the Inres protocol and service, revised ," 1992.
![Page 32: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/32.jpg)
32
Considered EFSM Specification (Cont.)
• Case Study 2: Responder [8]
disconnected wait
connected
T2: CR/ICONind
number:=0
Responder EFSM
T3: IDISreq/DR
T1: IDISreq/DR T4: ICON_resp/CCnumber:=0
T6: DT(num), DT.num != succ(number)/AK(num)
T5: DT(num), DT.num==succ(number)/AK(num)
number=succ(number)
[8] Hogrefe Dieter., "OSI formal specification case study: the Inres protocol and service, revised ," 1992.
![Page 33: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/33.jpg)
33
Considered EFSM Specification (Cont.)
• Case Study 3: SCP [9]
S1 S2
S3
T2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
T4: refuse, TryCount = 2 / CONcnf(0),
T5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
T6: Data / data(FinQos)
T3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
[9] W.-H Chen, "Executable test sequences for the protocol data flow property," Int. Conference on Formal Techniques for Networked and Distributed Systems, pp. 285-299, 2011.
![Page 34: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/34.jpg)
34
Considered EFSM Specification (Cont.)
• Case Study 4: Cruise Control [10]
S1S0
S3
S2
t1: ?engon/{maxt =10; maxb =10;
t =1; bpedal =1;
!o(1)}
t11: ?engoff/{!o(0)}
t13: ?engoff/
{!o(0)}
t12:
?en
goff/
{!o(0
)}
t2: ?acc, [bpedal >= 0
&& t < maxt – 5] /
{t +=5; bpedal =0;
!o(1)}t3: ?
acc,
[bped
al >
= 0
&& t >=
max
t – 5
] /
{t =
max
t; bped
al =
0;
!o(1
)}
t5: ?
b, [ t
>= 0
&&
bpedal
>=
max
b – 1
] /
{bped
al =
max
b;
t =0;
!o(1
)}
t4: ?b, [ t >= 0 &&
bpedal < maxb – 1]
/{bpedal += 1;
t =0; !o(1)}
t6: ?on/!o(2)
t10: ?off/!o(1)
t9:
?r/
{!o
(2)}
t7: ?acc/{!o
(2)}
t8: ?
b/{
!o(3
)}
[10] L. Briand, Y. Labiche, and Y. Wang, "Using Simulation to Empirically Investigate Test Coverage Criteria on Statecharts," Carleton University, Technical Report SCE-02-09, 2002.
![Page 35: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/35.jpg)
35
Random Test Suites• A Random Test Suite is a test suite generated
by a random walk through (or from a randomly generated path of) the EFSM Specification.
• Considered Random Test Suites:– Same length as the All-Uses test suite:
• With one test case.• With the same number of test cases.
– Same length as the All-Edges test suite:• With one test case.• With the same number of test cases.
![Page 36: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/36.jpg)
36
Mutation Operators• Code mutants are derived using the following well-
known types of mutation operators [11]:Operator Description
AOR Arithmetic Operator Replacement
AOI Arithmetic Operator Insertion
AOD Arithmetic Operator Deletion
ROR Relational Operator Replacement
COR Conditional Operator Replacement
COI Conditional Operator Insertion
COD Conditional Operator Deletion
SOR Shift Operator Replacement
LOR Logical Operator Replacement
LOI Logical Operator Insertion
LOD Logical Operator Deletion
ASR Assignment Operator Replacement
[11] Yu-Seung Ma and Jeff Offutt, "Description of Method-level Mutation Operators for Java," November 2005.
![Page 37: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/37.jpg)
37
Experimental Results• Coverage of Control-Flow and Data-Flow Test Suites:
![Page 38: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/38.jpg)
38
• Coverage of EFSM-Based Test Suites
![Page 39: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/39.jpg)
39
• Coverage of EFSM-Based Random Test Suites versus All-Uses and All-Edges Test Suites
![Page 40: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/40.jpg)
40
• Coverage of Best Control-Flow, Data-Flow and EFSM-Based Test Suites
![Page 41: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/41.jpg)
41
• Coverage of Best EFSM-Based Test Suites of All-Uses and All-Decisions Test Suites
![Page 42: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/42.jpg)
42
• Coverage of Best Control-Flow, Data-Flow and EFSM-Based test suites per each mutation operators category
![Page 43: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/43.jpg)
43
• Comparison of EFSM-Based versus Code-Based Random Test Suites
![Page 44: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/44.jpg)
44
• Summary of All Results
![Page 45: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/45.jpg)
45
TESTING WITH RESPECT TO TRANSFER FAULTS: A METHOD AND AN ASSESSMENT
![Page 46: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/46.jpg)
46
Conformance Testing
EFSM Spec
EFSM Black-Box IUTDerive TS
Apply
Same Behavior?
IUT non-conforming to SpecIUT conforming to Spec
Yes No
![Page 47: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/47.jpg)
47
Assumptions
• We assume the following:
The EFSM Implementation Under Testing (IUT) has:– the same number of states as the EFSM
specifications.– No Guard Faults.– No Assignment Faults.
![Page 48: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/48.jpg)
48
Types of Considered EFSM Faults• We consider two types of EFSM faults:
– output fault
S1 S2?a/!o
![Page 49: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/49.jpg)
49
Types of Considered EFSM Faults• We consider two types of EFSM faults:
– output fault
S1 S2?a/!o
?a/!w
![Page 50: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/50.jpg)
50
Types of Considered EFSM Faults• We consider two types of EFSM faults:
– output fault
– transfer fault
S1 S2?a/!o
?a/!w
S1 S2?a/!o
![Page 51: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/51.jpg)
51
Types of Considered EFSM Faults• We consider two types of EFSM faults:
– output fault
– transfer fault
S1 S2?a/!o
?a/!w
S1
S3
S2
?a/!o
![Page 52: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/52.jpg)
52
Configuration Distinguishing
(s, v1), (s, v2) are distinguishable if:
∃ an input sequence , such that, outputs produced at (s, v1) and (s, v2) in response to are different:
(s, v1)
(s, v2)
/ /
β1
β2β1 ≠ β2
![Page 53: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/53.jpg)
53
State Distinguishing
si, sj are distinguishable if:
∃ input sequence Wij, such that:
(si, v1)
(si, v2)
(sj, v2)
(sj, v3)
Wij = {1 , 2}
1
2
/ β2
/ β4
1
2
/ β1
/ β3
![Page 54: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/54.jpg)
54
State-Reduced EFSM
An EFSM is state-reduced if:
• Initialized: Every State is reachable from (s0, v0).
• ∀two states s, s’ are distinguishable.
![Page 55: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/55.jpg)
55
Fault Model (M, , ≅ )
• EFSM specification M of a given system.
• fault domain that includes the set of all possible conforming or non-conforming EFSM implementations of the given system.
• Conformance relation ≅ .
![Page 56: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/56.jpg)
56
Algorithm
• Input: EFSM specification M: – n states– state-reduced– Deterministic, complete, initialized– initially connected– F = {Hs0, Hs1 , …, HSn-1} of the n states
• Output: A complete Test Suite TS w.r.t. the fault model (M, , ≅ ).
![Page 57: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/57.jpg)
57
Step-1: Verify Initial Configuration (s0, v0)
M I
Hs0
=
v0
s0
Hs0
v1
?x/!β1
?x/!β1
vn
![Page 58: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/58.jpg)
58
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
?accept(0) / !- , ?Data / !-
Hs1
![Page 59: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/59.jpg)
Step-2: As possible check outgoing transitions of s0 reachable from (s0, v0)
59
Hs1
v0
s0
v0
s1
v1
v1 vm
sn
t = (s0, x, P, op, y, up, s´)
∃ px: (v0, px) |= P
TC: (x, px).Hs´
Add Transition t to tested.
(x, px)
![Page 60: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/60.jpg)
60
Test Case to check t8:?Reset / !-
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
![Page 61: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/61.jpg)
61
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
Hs1
Test Case to check t8:?Reset / !- , ?accept(0) / !-, ?Data / !-
![Page 62: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/62.jpg)
62
Step-3: Check outgoing transitions of other states reached using tested transitions
Hs2
v0
s0
v0
s1
v1
t1
v1
Tested Transition
v1
s2
v0t2
![Page 63: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/63.jpg)
63
In order to test t4,
t2 and t3 should be tested first.
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
![Page 64: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/64.jpg)
64
Test Case to check t4:r. ?CONreq(0)/!connect(0),
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
![Page 65: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/65.jpg)
65
Test Case to check t4:r. ?CONreq(0)/!connect(0), ?refuse/!connect(0)
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
![Page 66: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/66.jpg)
66
Test Case to check t4:r. ?CONreq(0)/!connect(0), ?refuse/!connect(0), ?refuse/!connect(0),
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
![Page 67: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/67.jpg)
67
Test Case to check t4:r. ?CONreq(0)/!connect(0), ?refuse/!connect(0), ?refuse/!connect(0), ?refuse/!CONcnf(0)
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
![Page 68: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/68.jpg)
68
Test Case to check t4: r. ?CONreq(0)/!connect(0), ?refuse/!connect(0), ?refuse/!connect(0), ?refuse/!CONcnf(0), ?accept(0)/!-, ?Data/!-
S1 S2
S3
t2: CONreq(qos), CONreq.qos ≤ 1 /connect(ReqQos),
ReqQos := CONreq.qos
t4: refuse, TryCount = 2 / CONcnf(0),
t5: accept(qos) / CONcnf(1, FinQos)FinQos := min(accept.qos, ReqQos)
t6: Data / data(FinQos)
t3: refuse, TryCount ≠ 2 /connect(ReqQos),
TryCount := TryCount + 1
TryCount := 0
t10: accept(qos) / -
t12: Reset / - t13: Data / -
t17: accept(qos) / -
Hs1
![Page 69: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/69.jpg)
69
Experimental Results
![Page 70: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/70.jpg)
70
Conclusion
• Random All Uses outperform EFSM-based, Data-Flow, and Control-Flow test suites.
• The best EFSM-Based test suites are Transition Tour and Single Transfer Fault test suites.
![Page 71: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/71.jpg)
71
Conclusion
• The best Data-Flow and Control-Flow test suite is All-Uses test suite.
• Transition Tour, Single Transfer Fault, and All-Uses test suites are comparable.
![Page 72: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/72.jpg)
72
Conclusion
• Transfer Faults Based Test Suites (TFTSs) outperform EFSM-based, random, and the traditional Data-Flow and Control-Flow test suites.
![Page 73: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/73.jpg)
73
Future Work
• Extending the testing with respect to transfer faults method to deal with partial EFSMs and consider related fault models and Conformance relations.
![Page 74: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/74.jpg)
74
QUESTIONS?
![Page 75: T ESTING AND A SSESSMENT OF P ROTOCOLS AND S YSTEMS M ODELED AS E XTENDED F INITE S TATE M ACHINES Tariq M. Salameh Advisor: Dr. Khaled El Fakih 30 th.](https://reader035.fdocuments.net/reader035/viewer/2022070412/56649e4d5503460f94b43a5a/html5/thumbnails/75.jpg)
75
THANK YOU