A Report Interface for an Extendable Check Execution Framework

Software testing is an important task to ensure software quality. Software testers can automate most their checks which are then executed automatically by testing frameworks. As a result, the testing framework produces a report, comprising which checks have been discovered, executed, and if they succeeded or failed. Currently, a new check execution framework, called xUnit Check Execution Framework (in short xChEF), is developed by Research Group Software Construction at RWTH Aachen University. The framework allows for plugins to define functionality as preand post-execution phases. Those plugins can have various goals, e.g., modifying the check plan, analysis, preparing check execution result, etc. Thus, they also have different reporting concerns. In general, a reporting interface would know about what the system is reporting and what kind of plugins are used. However, with xChEF, where plugins are not known upfront, it is challenging to provide a decoupled and reusable reporting interface. A simple solution is to use strings to create reports. However, the support for various formatting such like HTML or XML is problematic. In this thesis, I would like to propose a design and implementation of a general purpose reporting interface to handle the reporting part of xChEF. This reporting interface must be open for all kinds of report concerns and should be decoupled from the framework itself. On the other hand, it must be well structured to support various output formats like XML, HTML, and plain text. Further, it must support real-time reporting