I have a continuous integration build server (using Team City). When people check code in, I'd like to run a set of tests which run through a set of functional cases such as:
- Using an administrator account, I can create a document
- If I belong to the 'Editor' role, then I can access document x and document y.
and so on.
We have a number of unit tests which cover individual functions, but we really want this quick 'smoke test' to see if anything discrete has slipped through the net.
Should I:
- Create a 'dummy database' with pre-populated users, permissions, documents, and create the tests to use data from this database?
- Use some sort of mocking framework for this? What are the advantages / disadvantages here?
Or, is my thinking completely off?
Appreciate your thoughts.