В ситуации, как вы описали, я бы предпочел создать учетную запись в тестовой функции.
Юнит-тест должен быть как можно более независимым. Кроме того, это помогает понять, что вы тестируете, если вы видите все данные, необходимые для теста, в одном месте.
Вот полностью составленный пример, который должен проиллюстрировать:
[Test]
public void Test_CannotCreateDuplicateEmail()
{
// Arrange
CreateAccount("test@example.com"); // OK
// Act
try
{
CreateAccount("test@example.com");
// If control arrives here, then the test has failed.
Assert.Fail();
}
// Assert
catch(AccountException ex)
{
// Assert that the correct exception has been thrown.
Assert.AreEqual("Failed", ex.Message);
}
}