Hi Folks,

At the Engineering meeting we have been working through the items from the 0.5 debrief (we got a little derailed by 0.6 stuff). One of the topics that we discussed this week was regression testing. The basic idea is to have tests that check for bugs that have previously been fixed, so that we don't regress the same bugs. If we find a bug in a component, then I think it's safe to say that we also found a hole in our test coverage.

In order to improve our test coverage (and make sure that the same bugs don't crop up later), we would like people to check in a test case when they fix a bug. The test case should ensure that the bug has been fixed. You can add the testcase to the same file as the other tests for the module. I try to put the bug number in the name of the test method, so if you look at repository/query/tests/ TestNotification.py <http://svn.osafoundation.org/chandler/trunk/ chandler/repository/query/tests/TestNotification.py>, you'll see a test for Bug # 2288. I've used this approach very successfully on other projects, and it definitely prevented the introduction of regressions. Unfortunately, I haven't been as good about this as I'd like to be, so I'm going to be working at doing a better job of this.

As a side note, I think it's great that more of us are getting more interested in topics related to testing (I saw a discussion in IRC about Kent Beck's excellent Test Driven Development book <http:// www.amazon.com/exec/obidos/tg/detail/-/ 0321146530/002-7429555-8309616>). There are a lot of similarities between Agile development methodologies like Extreme Programming or Scrum and good open source projects.

Ted

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "Dev" mailing list
http://lists.osafoundation.org/mailman/listinfo/dev

Reply via email to