I finished my tool
to look through a large set of our test code to classify our tests with respect
to who owns them, when they run and other attributes like that. My first use of this was to find
"dead" tests - tests that never run, provide no validation or
otherwise are left in the system for some reason. I want to give a sense of scale for how big
this type of challenge is.
After looking
through just over 1000 tests, I identified 15 that appeared they may be
dead. Closer examination of those tests
took about 1/2 a day and determined that 8 of them are actually in use. This revealed a hole in my tool - there was
an attribute I forgot to check.
One of the tests was
actually valid and had simply been mis-tagged.
I reenabled that test and it is now running again and providing
validation that nothing has broken.
The other 6 tests
were a bit more challenging. I had to
look at each test then look at lab results to see if anyone was actually still
running them, dig through each test to see what was the expected result and so
on. In most cases, I had to go to the
person that wrote the test - in 2 instances, almost 10 years ago - to see if
the tests could be removed. It might
seem trivial to track 6 files out of 1000+ but this will save us build time for
every build and maintenance costs over the years as well as leaving a slightly
cleaner test code base.
In 4 of the cases,
the tests can be removed and I have removed them. In the USA, this is a holiday week for us so
I am waiting on some folks to get back in the office next week to follow up on
the last 2 tests.
This is all
incremental steps to squaring away our test code.
Questions, comments,
criticisms and complaints always welcome,
John
No comments:
Post a Comment