Debugging concurrent processes: a case study
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Conditional rewriting logic as a unified model of concurrency
Selected papers of the Second Workshop on Concurrency and compositionality
Test data generation and feasible path analysis
ISSTA '94 Proceedings of the 1994 ACM SIGSOFT international symposium on Software testing and analysis
Model checking
Isolating failure-inducing thread schedules
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
Testing Component-Based Software: A Cautionary Tale
IEEE Software
Maude: specification and programming in rewriting logic
Theoretical Computer Science - Rewriting logic and its applications
An Approach to Symbolic Test Generation
IFM '00 Proceedings of the Second International Conference on Integrated Formal Methods
Concurrency: State Models And Java Programs
Concurrency: State Models And Java Programs
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Task automata: Schedulability, decidability and undecidability
Information and Computation
A Theory of Bounded Fair Scheduling
Proceedings of the 5th international colloquium on Theoretical Aspects of Computing
Multithreaded java program test generation
IBM Systems Journal
A complete guide to the future
ESOP'07 Proceedings of the 16th European conference on Programming
Whodunit? causal analysis for counterexamples
ATVA'06 Proceedings of the 4th international conference on Automated Technology for Verification and Analysis
A Theory of Bounded Fair Scheduling
Proceedings of the 5th international colloquium on Theoretical Aspects of Computing
An Object-Oriented Component Model for Heterogeneous Nets
Formal Methods for Components and Objects
Model Testing Asynchronously Communicating Objects using Modulo AC Rewriting
Electronic Notes in Theoretical Computer Science (ENTCS)
Executable interface specifications for testing asynchronous creol components
FSEN'09 Proceedings of the Third IPM international conference on Fundamentals of Software Engineering
Hi-index | 0.00 |
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.