Types of Tests

Discussion of testing theory and practice, including methodologies (such as TDD, BDD, DDD, Agile, XP) and software - anything to do with testing goes here. (Formerly "The Testing Side of Development")

Moderator: General Moderators

Post Reply
stryderjzw
Forum Newbie
Posts: 21
Joined: Sat Aug 06, 2005 5:45 pm

Types of Tests

Post by stryderjzw »

Just wanted to ask about all these different kinds of tests I hear people talk about...

Acceptance tests
Unit tests
Integration tests

I'm writing tests, but I'm not exactly sure differences. Also, most stuff I read are for applications and not for websites, how different are the acceptance tests for webapps?

Are there more?
lastcraft
Forum Commoner
Posts: 80
Joined: Sat Jul 12, 2003 10:31 pm
Location: London

Re: Types of Tests

Post by lastcraft »

Hi...
stryderjzw wrote:Acceptance tests
These come straight from your customer's specification, or your own specification. They aren't expected to pass all the time, or they may be commented out whilst the work is being done.
stryderjzw wrote:Unit tests
These are tests to help you code. A unit is usually a class, static method or free function. Sometimes it will be a couple of these is they are tightly connected. You write tests unless you cannot think of anything else that would go wrong. When they all pass, and the code is clean, you are done.
stryderjzw wrote:Integration tests
Well, this is everything that is more than one unit. They are programmer driven. The category is a bit vague to me as well. We use it to mean "everything else".
stryderjzw wrote: I'm writing tests, but I'm not exactly sure differences. Also, most stuff I read are for applications and not for websites, how different are the acceptance tests for webapps?
If you can state the goal of a group of tests, then that's probably enough. So "integration tests catch inconsistencies between the units" is good enough. "Acceptance tests ensure we are only doing what we set out to do" and so on. With those in mind, you are less likely to worry which suite a test belongs in.

The poor man's acceptance tests for the web are tools like the SimpleTest WebTestCase and JWebUnit. It's actually easier to acceptance tests for the web, because you are dealing mainly in text. Click this, click that, login there, should see "27 dollars" and so on.
stryderjzw wrote: Are there more?
As many as you can come up with. We have a set of tests for hammering the network for example. We calls those "soak tests". We have some for monitoring the live system which we call "health tests". We have some that test the installation of dependencies which we call "boundary tests", although nowadays I'd call them "gateway tests".

The whole field is pretty new. Anything you discover is worth telling us about :).

yours, Marcus
Post Reply