最近C#プロジェクトでNUnitの2.x最新版を使っていることもあって、NUnit3.0のアルファリリースが気になった。その中の新しい機能(属性)OneTimeSetUpを試してみたのだけれど、動かせなかったというお話。名称からテスト実行時に一度だけ実行されるセットアップ関数を定義できると思ったのだが。
サンプルコード
namespace TryNUnit3 { [TestFixture] public class TestSample { [OneTimeSetUp] public void InitOneTime() { Console.WriteLine("OneTimeSetup"); } [SetUp] public void Init() { Console.WriteLine("SetUp"); } [TestCase("Hoge")] [TestCase("Fuga")] public void TestAdd(string foo) { // テスト実行 Console.WriteLine(foo); } } }
結果
関連ドキュメント
NUnit - OnetimeSetup
JUnitだと@BeforeClassに当たるのかな。
Test fixtures · junit-team/junit Wiki · GitHub