As técnicas de teste de software são extremamente variadas e, quanto mais você se instruir sobre elas, começará a ver muitas orientações diferentes (e às vezes conflitantes). Não há um único livro para seguir.
Eu acho que você está em uma situação em que você viu algumas orientações para testes de unidade que dizem coisas como
- Cada teste deve ser autônomo e não ser afetado por outros testes
- Cada teste de unidade deve testar uma coisa, e apenas uma coisa
- Os testes de unidade não devem atingir o banco de dados
e assim por diante. E tudo isso está certo, dependendo de como você define 'teste de unidade' .
Eu definiria um 'teste de unidade' como algo como: "um teste que exercita uma parte da funcionalidade de uma unidade de código, isolada de outros componentes dependentes".
Sob essa definição, o que você está fazendo (se precisar adicionar um registro a um banco de dados antes de poder executar o teste) não é um 'teste de unidade', mas mais do que é comumente chamado de 'teste de integração'. (Pela minha definição, um verdadeiro teste de unidade não atingirá o banco de dados; portanto, você não precisará adicionar um registro antes de excluí-lo.)
Um teste de integração exercitará a funcionalidade que usa vários componentes (como uma interface com o usuário e um banco de dados), e as orientações que se aplicariam aos testes de unidade não se aplicam necessariamente aos testes de integração.
Como outras pessoas mencionaram em suas respostas, o que você está fazendo não é necessariamente errado, mesmo que você faça coisas contrárias a algumas orientações de teste de unidade. Em vez disso, tente argumentar sobre o que você está realmente testando em cada método de teste e, se achar que precisa de vários componentes para satisfazer seu teste, e alguns componentes exigem pré-configuração, vá em frente e faça-o.
Mas, acima de tudo, entenda que existem muitos tipos de testes de software (testes de unidade, testes de sistema, testes de integração, testes exploratórios etc.) e não tente aplicar a orientação de um tipo a todos os outros.