Presentation: Tweet"Testing Asynchronous Behaviour in an Instant Messaging Server"
Asynchronous behaviour is hard to test—because you don’t know when to expect it, and sometimes you don’t even know what to expect! The same test case can behave differently in different runs, making it hard to determine whether or not the test passed. Generating tests randomly makes the problem even harder! You’ll learn how we solved this problem neatly and simply, in developing a QuickCheck test suite for ejabberd—the most widely deployed XMPP instant messaging server.
Keywords: Erlang, ejabberd, xmpp, messaging, testing, asynchronous, random testing, QuickCheck
Target audience: Developers interested in test infrastructure forcomplex systems with asynchronous behaviour - for example, needing to test that asynchronous messages are delivered on time.