編集-まともな答えに置き換える。
次のようなC#クラスを作成します-
using System;
using NUnit.Framework;
namespace NUnit.Tests
{
[SetUpFixture]
public class MySetUpClass
{
[OneTimeSetUp]
public void RunBeforeAnyTests()
{
// Set up my database with SQL scripts run via SqlCommand
}
[OneTimeTearDown]
public void RunAfterAnyTests()
{
// tear down my database with SQL scripts run via SqlCommand
}
}
}
これは、テストの前に1回だけセットアップを実行し、すべてのテストが完了した後に1回だけティアダウンを実行する必要があります。
私はこれを死からよみがえらせていることに気づきましたが、まともな答えを得る時が来たと感じました。
いずれにせよ、はるかに良い方法があります。データレイヤーをモックしてテストします。次に、SQLServerで行われるすべてがストアドプロシージャと関数の形式であることを確認します。次に、Visual Studioを使用して、これらのsprocと関数の単体テストを作成します。
リポジトリにロジックがある場合は、Insight.Databaseを取得して、そのAutoInterface機能を利用することをお勧めします。このように、リポジトリレイヤーは単なるインターフェイスであり、簡単にモックして先に進むことができます。