Automated Testing of Event-Driven Applications

Research output: Book/anthology/dissertation/reportPh.D. thesisResearch

Documents

  • Thesis

    Submitted manuscript, 1 MB, PDF document

may be tested by selecting an interesting input (i.e. a sequence of
events), and deciding if a failure occurs when the selected input is applied to
the event-driven application under test. Automated testing promises to reduce
the workload for developers by automatically selecting interesting inputs
and detect failures. However, it is non-trivial to conduct automated testing
of event-driven applications because of, for example, infinite input spaces and
the absence of specifications of correct application behavior.
In this PhD dissertation, we identify a number of specific challenges when
conducting automated testing of event-driven applications, and we present
novel techniques for solving these challenges.
First, we present an algorithm for stateless model-checking of event-driven
applications with partial-order reduction, and we show how this algorithm
may be used to systematically test web applications for timing related failures.
Next, we present an algorithm for generating inputs to event-driven
applications in a targeted manner, combining existing techniques using UI
models and concolic testing in a novel way. Finally, we show how server interface
descriptions can be used to simplify the process of automated testing of
web applications that depend on client-server communication, and we present
a learning algorithm for inferring such server interface descriptions from concrete
observations.
We implement tools for web applications and Android mobile applications
using the above algorithms and techniques, and we experimentally evaluate
the effectiveness of the proposed solutions on real-world applications. Based
on our experiments, we conclude that our proposed solutions are useful when
automatically testing event-driven applications, and that our proposed solutions
pushes the state-of-the-art within this area.
Original languageEnglish
PublisherDepartment of Computer Science, Aarhus University
Number of pages163
Publication statusPublished - 4 Jan 2015

See relations at Aarhus University Citationformats

Download statistics

No data available

ID: 84097932