Testing Event-driven Applications with Automatically Generated Events Maximilian V¨ olker, Sankalita Mandal, and Marcin Hewelt Hasso Plattner Institute at the University of Potsdam, Germany {firstname.lastname}@hpi.de Abstract. To make use of the abundance of events produced by smart devices, social media, or the internet-of-things (IoT), implemented busi- ness processes need to integrate external events. Thus, processes are event-driven applications that need to be tested correspondingly. How- ever, testing with real-world events is hard, because those events cannot be controlled. Therefore, we suggest to use generated events for testing and implement an event generator component and demonstrate our ap- proach using an use case from the IoT domain. This demo is aimed at practitioners and academics working with event-driven applications. 1 Introduction In today’s interconnected world more and more events are produced by smart devices, sensors, in social media, via APIs, and IoT, that companies need to take into account [1]. Event-driven application development is a paradigm of software development, which bases its application logic on reacting to received events [2]. Implemented business processes that are aware of and connected to external event sources can be viewed as event-driven applications, because cases are started when events occur, activities are aborted and so on. Testing is an essential part of software development ensuring that the software operates as expected and no bugs are introduced during coding (regression testing). In case of business processes running in a process engine we need to make sure that new cases are started correctly, event-based gateways and intermediate events work as expected, and that exception handling through boundary events functions. When high-level events are employed [3], the aggregation of event patterns needs to be tested as well. However, accessing real-world events for testing is problematic for several reasons: a) the time when they occur and their content is hard to control, b) exceptional events occur seldom or not at all during the test phase, c) sometimes there is not enough event data available, and d) it can be costly to connect to some event sources. To mitigate this problem of testability of event-driven business processes, we suggest to automatically generate events, thus providing a mock event stream for testing. Therefore, we extended our event processing platform Unicorn 1 with Event Generator, which is configurable and generates events with random attribute values taken from various ranges and distributions. 1 https://bpt.hpi.uni-potsdam.de/UNICORN