A major code migration

This pension fund runs a custom Java development team with over 150 developers. Due to challenges in their IT processes, code changes often resulted in application failures, slowing delivery and reducing quality. There were several factors to this underlying pain.

One, as a very large Java shop, the JUnit testing requirements for the customer were massive.

Two, being in the middle of retiring an aging mainframe meant that there were about 2 million lines of code that needed to be rewritten. Identifying a way to accelerate the generation of JUnit tests for both existing and new code would be critical for future success.

The fund began their search for a tool that could analyze their existing code, automatically write and maintain unit tests that reflect the code’s current behavior, and automatically write regression tests for newly created code.

“I don’t want to pay somebody to write JUnits and all this code. How can we speed this up?”

Major US Pension Fund

Adopting Diffblue Cover

Diffblue Cover was the perfect fit due to the specificity of what Diffblue offers. Using Cover, the fund was able to automatically write tests for core Java code.

The value of automatically writing tests was clear - it is a lot easier (and cheaper) than writing them manually, especially when there is no prior test coverage - but the customer also realized that value would increase over time as more code was changed and created.

Diffblue worked with the customer through every step of their initial setup to ensure high coverage for their highest priority code through weekly “surgery” sessions. Diffblue also provided training and consultancy until onboarding was completed.

70% unit coverage without manual effort

Prior to engaging with Diffblue, this major US pension fund set a goal of 60% to 80% Java unit test coverage from a starting point of zero. After the initial onboarding, the customer had successfully achieved 70% coverage thanks to Diffblue Cover.

More than 4750 tests were written automatically - an outcome that would otherwise have required 132 developer days of effort.

Using Cover, the fund was also able to identify key areas of code that required refactoring and plan their approach accordingly. Diffblue was then able to suggest more precise configurations to provide additional insights.

In future, Diffblue Cover will be added to several more projects to add coverage, increase quality and minimize the risk of change.