The general rule is “assert logically”, which means one is allowed to create multiple statements in a single unit test.

However, this technique leaves open the issue of quickly discovering why did a test fail.

Here are some links to help with having single asserts per test:

Important information when using XUnit: a new instance of the test class is created for every test that is run (the code in the constructor is executed for each run test, each run test receives a clean copy of the ‘context object’).

The cleanup code is to be implemented in the Dispose method.