Constraint-based languages can express in a concise way the complex logic of a new generation of interactive services for applications such as banking or stock trading, that must support multiple types of interfaces for accessing the same data. These include automatic speech-recognition interfaces where inputs may be provided in any order by users of the service. We study in this paper how to systematically test event-driven applications developed using such languages. We show how such applications can be tested automatically, without the need for any manually-written test cases, and efficiently, by taking advantage of their capability of taking unordered sets of events as inputs. Categories and Subject Descriptors H.4.m [Information Systems]: Miscellaneous; D.2 [Software]: Software Engineering; D.2.4 [Software Engineering]: Software / Program Verification; D.2.5 [Software Engineering]: Testing and Debugging General Terms Languages, Reliability, Verification Keywords Constraint-Bas...