Timed Extended Invariants for the Passive Testing of Web Services
read more
Citations
Testing and verification in service-oriented architecture: a survey
Testing software and systems
A survey on formal active and passive testing with applications to the cloud
A formal data-centric approach for passive testing of communication protocols
Events-Based Security Monitoring Using MMT Tool
References
Web Services Description Language
The IF Toolset
A passive testing approach based on invariants: application to the WAP
Automatic Timed Test Case Generation for Web Services Composition
Two Complementary Tools for the Formal Testing of Distributed Systems with Time Constraints
Related Papers (5)
A passive testing approach based on invariants: application to the WAP
Frequently Asked Questions (17)
Q2. What are the types of test sequences?
Test sequences are commonly automatically or semi-automatically generated from formal models that represent test criteria, hypothesis and test objectives.
Q3. What is the definition of a Web service?
A Web Service is defined by the World Wide Web Consortium W3C as “a software system designed to support interoperable machine-to-machine interaction over a network.
Q4. What is the verdict for an invariant?
The obtained verdict for an invariant can be either: Pass, Fail or Inconclusive meaning respectively that all events were satisfied, that at least one event was not satisfied or that it isnot possible to give a verdict due to the lack of information in the trace.
Q5. What is the function stepback used to traverse T?
The pointers Current packet (CrPkt) and Reference packet (RefPkt) are used to traverse T using the function stepback (see Def 11).
Q6. What is the simplest invariant to analyze?
Note that since the obligation invariant uses the logic “if a happens then b should have happened before a”, the trace is covered backwards starting from pk and finishing in p1.
Q7. What is the next step in the analysis of the SOAP messages?
The next step consists in capturing the communication traces using a sniffer (we used Wireshark) and analyzing them using the TIPS tool.
Q8. what is the function if fm,n is an If-Then property?
The authors define the function: φ: P × F → V as the function allowing to provide the value of a field in a specific packet of the trace T :• φ(pi, fm,n) = vi,n if fm,n ∈ pi and• φ(pi, fm,n) = NULL if fm,n /∈ piAn invariant is an If-Then property.
Q9. What is the current state of the tool?
TIPS uses a collected trace to perform the testing, however, the authors are working towards improving this tool to be able to analyze packets in real time in order to detect functional/security violations on the fly.
Q10. How does the invariant in Figure 2 express that a system received a reply message?
The invariant in Figure 2 expresses that if a system receives a reply message, then this means that it wa sent a request message 10 seconds before.
Q11. What is the time required to analyze a trace?
This implies that the the time required to analyze a trace is in the order of N2 x The authorx T where N = the number of packets in the trace, The author= the number of invariants and T = the average time spent in analyzing an invariant on a packet.
Q12. What is the meaning of the invariant?
In this invariant the authors have the Trigger Context from lines 5 to 15, this means that if in the collected trace, the authors find a message respecting the event described in the <if> context (lines 6 to 14), the process of verifying the invariant over the trace is triggered.
Q13. what is the kth condition of ejA packet pi satisfies?
Let pi be a packet and ej an event with mj conditions and cj,k the kth condition of ejA packet pi satisfies an event ej iff ∀ k ∈ [1, mj ], cj,k is trueDefinition 6 (Abstention of having an event)
Q14. What is the definition of active testing?
active testing usually relies on the comparison between the behavior of an implementation and its formal specification by checking whether they are equivalent.
Q15. How long does it take to test the invariant?
This kind of situation is not very frequent in a real system deployment and to test it (i.e test the invariant describing this test), the authors would need to wait for a sufficiently long time or the authors can simulate the non answer by shutting down the hotel Web service.
Q16. What is the purpose of the TIPS tool?
Based on the methodology of their work, the authors developed the TIPS tool [6] that performs automated analysis of the captured traces to determine if the given timed extended invariants are satisfied or not.
Q17. What is the format of the TO11?
Taking as an example the TO11, it can be represented as a timed extended invariant format presented in the Section 3 as follows:((e0;¬e1)−1,20) After,−1,1 −−−−−−−→ e2• e0: the TRS sends a reservation request to the HRS.