James Governor's Monkchips

What is unit testing? A video on improving test coverage with DiffBlue

Share via Twitter Share via Facebook Share via Linkedin Share via Reddit

Diffblue signed up a client a while ago. It’s an interesting startup doing some real good work in building automated tools to improve test coverage. Given CI/CD is is the foundation of pretty much everything good in modern software development, it’s never been more important to have good test coverage. Most legacy Java codes… are sorely lacking in that respect. But if you want to be able to able to move fast, first you have test things.

From our introductory new client profile:

Diffblue uses mathematical reasoning to build a model of a code base, and then uses semantic analysis to generate queries and tests to understand the behaviour of the code, which is the basis of its approach. Using this engine to build unit test coverage for regression testing was an obvious place to start but the company has ambitions to go much further in AI and machine learning based tools to support software engineering – a new generation of computer aided software engineering (CASE) tools if you will.

The tech industry is currently looking anew at automated tooling to support engineering teams given skills shortages and the transition to modern software practices around continuous integration/continuous delivery (CI/CD) and Progressive Delivery. Enterprises literally can’t have developer velocity and software stability without solid test coverage: it is a core underpinning for CI/CD. For organisations that want to modernise software delivery practices across legacy code bases they’re going to need help generating tests. Historically the answer might have been outsourcing, but that’s hardly going to be an effective approach to adopting modern agile practices.

Anyway I recently interviewed Diffblue VP of Engineering Andy Piper and he did an excellent job of our What Is/How to? format. Hopefully you’ll enjoy this video. Smash like! etc.

No Comments

Leave a Reply

Your email address will not be published. Required fields are marked *