Volume 14, Number 5

Redusharptor: A Tool to Simplify Developer-Written C# Unit Tests


David Weber and Arpit Christi, Weber State University, USA


Modern software systems are complex and locating, isolating and fixing a fault even with a failing test is tedious and time-consuming. Simplifying failing test(s) can significantly reduce the developer effort by reducing the irrelevant program entities that developers need to observe. Delta Debugging (DD) algorithm automatically reduces the failing tests. Hierarchical Delta Debugging (HDD) algorithm improves DD for hierarchical tests like source code and HTML files. Many modern implementations of these algorithms work on a generic tree-like structure and fail to consider complex structures, intricacies, and interdependence of program elements of a particular programming language. We propose a tool ReduSharptor to simplify C# tests that uses language-specific features and interdependence of C# program elements using Roslyn compiler APIs. We evaluate ReduSharptor on a set of 30 failing C# tests to demonstrate its applicability and accuracy.


program debugging, software testing, software maintenance.