DocumentCode
1494110
Title
Oracles for Distributed Testing
Author
Hierons, Robert Mark
Author_Institution
Sch. of Inf. Syst., Comput., & Math., Brunel Univ., Uxbridge, UK
Volume
38
Issue
3
fYear
2012
Firstpage
629
Lastpage
641
Abstract
The problem of deciding whether an observed behavior is acceptable is the oracle problem. When testing from a finite state machine (FSM), it is easy to solve the oracle problem and so it has received relatively little attention for FSMs. However, if the system under test has physically distributed interfaces, called ports, then in distributed testing, we observe a local trace at each port and we compare the set of local traces with the set of allowed behaviors (global traces). This paper investigates the oracle problem for deterministic and nondeterministic FSMs and for two alternative definitions of conformance for distributed testing. We show that the oracle problem can be solved in polynomial time for the weaker notion of conformance (⊆w) but is NP-hard for the stronger notion of conformance (⊆), even if the FSM is deterministic. However, when testing from a deterministic FSM with controllable input sequences, the oracle problem can be solved in polynomial time and similar results hold for nondeterministic FSMs. Thus, in some cases, the oracle problem can be efficiently solved when using ⊆s and where this is not the case, we can use the decision procedure for ⊆w as a sound approximation.
Keywords
distributed processing; finite state machines; polynomials; program testing; FSM; NP-hard problem; decision procedure; distributed testing; finite state machine; oracle problem; physically distributed interfaces; polynomial time; sound approximation; weaker notion; Controllability; Observability; Polynomials; Software; Software engineering; Testing; Software engineering/software/program verification; controllability; distributed systems; finite state machine; local observability.; nondeterminism; software engineering/testing and debugging; systems and software; test oracle;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/TSE.2011.45
Filename
5750006
Link To Document