Testing: use_transactional_fixtures not working

Ok folks, so I have a controller test that passes on the first run
through, but if I run the test again it fails as changes made to the
database within the test have been committed.

Surely even if though there is a transaction block which is committed
within the commands that the test executes, it will be within the
transaction wrapping the whole test, and so will be rolled back when the
test completes? If this is the case, why is it not happening here?

Thanks!

Matt