Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

If you do, do you discuss coverage, continuous integration, quality control, or anything related to the difference between unit testing, functional testing and TDD in general? If clients ask, do you simply state that you will unit test, but leave out specifics?

share|improve this question
up vote 2 down vote accepted

IMO,unit testing is akin to an implementation detail. They are hidden, yet quite an unwritten expectation.

TDD would fall into this category as well since, again, it is really a process of software development. The contract defines expectations, not a process.

If a summary of time is expected, these should generally fall into categories of Design and Testing.

share|improve this answer
Yes, but unit tests are a derivation of acceptance tests and requirements. I think part of the reason that unit testing may be a line item is to make it a first-class citizen, and not just part of the "busy work" of completing the requirements. – Robert Harvey Aug 13 '11 at 17:26
@Robert: fair enough ... yes we unit test and yes, that is where part of your money goes. I have simply taken unit testing as a given. – IAbstract Aug 13 '11 at 18:34

Not as such, but we have a specified level of decision coverage and function coverage as the final acceptance criteria for our software, so we use unit tests to achieve this.

So we've made writing unit tests to achieve this level of coverage part of our definition of done. We're not doing TDD.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.