Je pensais que ce serait bien de créer une classe de base pour les appareils de test NUnit qui ouvre un TransactionScope pendant la phase SetUp, puis annule la transaction lors de la suppression. Quelque chose comme ceci:Est-ce sécuritaire? - La classe de base NUnit ouvre et annule un TransactionScope
public abstract class TestFixtureBase
{
private TransactionScope _transaction;
[TestFixtureSetUp]
public void TestFixtureSetup()
{
_transaction = new TransactionScope();
}
[TestFixtureTearDown]
public void TestFixtureTearDown()
{
if (_transaction != null)
{
_transaction.Dispose();
}
}
}
Pensez-vous que cela est une bonne idée? De toute évidence, la base de données est simplement une base de données de test, pas une base de données en ligne, mais elle serait encore ennuyeuse si elle contenait des données inutiles provenant des tests unitaires.
Que font les autres utilisateurs lorsqu'ils exécutent des tests unitaires impliquant beaucoup d'accès aux données?
+ 1 pour simuler l'accès aux données ... sauf si vous testez réellement l'implémentation DAL. – Gishu