The University of Sheffield
School of Computer Science

Stoyan Balabanov Undergraduate Dissertation 2017/18

Visualisation of Unit Tests

Supervised by P.McMinn

Abstract

Unit testing is a form of testing that breaks down a given software into functions and tests each one of them for logic errors. This is done to ensure that those individual units of code are bug-free, and thus fit for use as part of the larger system.

Writing unit tests is a challenging task. Some of the tests might fail for unclear reasons or even if all of them pass, the code could still not work as it is intended to. Feedback plays a key part in this process, as it provides the context needed to better interpret and fix existing issues. However, the feedback provided by the predominant unit testing framework in Java, JUnit, consists only of the information of whether the written tests pass or fail.

The aim of this project is to develop a software tool that improves upon this feedback by gathering various testing and code quality metrics and visualising them through a Java GUI. Providing its users with a better understanding of both their source and test code, the tool should aid them in keeping their code quality up to a high standard.