How to drastically improve code coverage?

Posted by Peter Kofler on Programmers See other posts from Programmers or by Peter Kofler
Published on 2011-11-20T20:09:48Z Indexed on 2011/11/21 2:07 UTC
Read the original article Hit count: 298

I'm tasked with getting a legacy application under unit test. First some background about the application: It's a 600k LOC Java RCP code base with these major problems

  • massive code duplication
  • no encapsulation, most private data is accessible from outside, some of the business data also made singletons so it's not just changeable from outside but also from everywhere.
  • no business model, business data is stored in Object[] and double[][], so no OO.

There is a good regression test suite and an efficient QA team is testing and finding bugs. I know the techniques how to get it under test from classic books, e.g. Michael Feathers, but that's too slow. As there is a working regression test system I'm not afraid to aggressively refactor the system to allow unit tests to be written.

How should I start to attack the problem to get some coverage quickly, so I'm able to show progress to management (and in fact to start earning from safety net of JUnit tests)? I do not want to employ tools to generate regression test suites, e.g. AgitarOne, because these tests do not test if something is correct.

© Programmers or respective owner

Related posts about object-oriented

Related posts about refactoring