Helmholtz Center for Information Security
CISPA – Helmholtz-Zentrum für InformationssicherheitNot a member yet
3406 research outputs found
Sort by
Topic-driven testing
When manually testing Web sites humans can go with vague, yet general instructions, such
as" add the product to shopping cart and proceed to checkout". Can we teach a robot to
follow such instructions as well? In this paper I present a novel model, called semantic
usage patterns which allows us to capture the general topics behind the individual steps of
interactions. These models can be extracted from existing test descriptions be they in natural
language or in form of system tests. Those usage patterns can be applied even on
applications they were not designed for. They allow to test applications automatically in
order to identify behavioral anomalies in the application model or detect missing
functionalities
Detecting behavior anomalies in graphical user interfaces
When interacting with user interfaces, do users always get what they expect? For each user
interface element in thousands of Android apps, we extracted the Android APIs they invoke
as well as the text shown on their screen. This association allows us to detect outliers: User
interface elements whose text, context or icon suggests one action, but which actually are
tied to other actions. In our evaluation of tens of thousands of UI elements, our BACKSTAGE
prototype discovered misleading random UI elements with an accuracy of 73%
Where is the Bug and How is It Fixed? An Experiment with Practitioners
Research has produced many approaches to automatically locate, explain, and
repair software bugs. But do these approaches relate to the way practitioners actually locate,
understand, and fix bugs? To help answer this question, we have collected a dataset named
DBGBENCH---the correct fault locations, bug diagnoses, and software patches of 27 real
errors in open-source C projects that were consolidated from hundreds of debugging
sessions of professional software engineers. Moreover, we shed light on the entire
debugging process, from constructing a hypothesis to submitting a patch, and how
debugging time, difficulty, and strategies vary across practitioners and types of errors. Most
notably, DBGBENCH can serve as reality check for novel automated debugging and repair
techniques