Testing Concurrent Objects with Application-Specific Schedulers
In this paper, we propose a novel approach to testing executable models of concurrent objects under application-specific scheduling regimes. Method activations in concurrent objects are modeled as a composition of symbolic automata; this composition expresses all possible interleavings of actions. Scheduler specifications, also modeled as automata, are used to constrain the system execution. Test purposes are expressed as assertions on selected states of the system, and weakest precondition calculation is used to derive the test cases from these test purposes. Our new testing technique is based on the assumption that we have full control over the (application-specific) scheduler, which is the case in our executable models under test. Hence, the enforced scheduling policy becomes an integral part of a test case. This tackles the problem of testing non-deterministic behavior due to scheduling.
Unable to display preview. Download preview PDF.
- 2.Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. The MIT Press, Cambridge (1999)Google Scholar
- 7.ISO/IEC 9646-1: Information technology - OSI - Conformance testing methodology and framework - Part 1: General Concepts (1994)Google Scholar
- 9.Johnsen, E.B., Owe, O.: An asynchronous communication model for distributed concurrent objects. Software and Systems Modeling 6(1), 35–58 (2007)Google Scholar
- 10.Magee, J., Kramer, J.: Concurrency: State Models & Java Programs, 2nd edn. Wiley, Chichester (2006)Google Scholar
- 14.Schönborn, J., Kyas, M.: A theory of bounded fair scheduling. In: Fitzgerald, J., Haxthausen, A. (eds.) International Colloquium on Theoretical Aspects of Computing (ICTAC). LNCS, vol. 5160, pp. 334–348. Springer, Heidelberg (2008)Google Scholar
- 18.Weyuker, E.J.: Testing component-based software: A cautionary tale. IEEE Software, pp. 54–59 (September 1998)Google Scholar