2012-03-20 9 views
0

私はteamcityと協力して、いくつかの古い統合テストをそれに移しています。これらの古い統合テストでは、コンソールアプリケーションとして結果が記録されました。私は結果をログに記録するだけで、チームシティーはNUnitをうまくサポートしており、それを利用したいと考えています。NUnit .NET作成テスト

が、これは私の古いテスト

public void Test() 
    { 
     int tries = 10; 
     int fails = Check(tries); 

     Console.WriteLine("{0} fails out of {1} attempts", fails, tries); // log results 
    } 

    public int Check (int tries) 
    { 
     int fails = 0; 
     for (int i = 0; i < tries; i++) 
     { 
      if (i % 2 == 1) fails++; 
     } 
     return fails; 
    } 

の1、私はNUnitのでこれを行う方法がわからないですか、それも可能だ場合だったと言うことができます。私はCheckの各呼び出しをそれ自身のテストにしたいと思います。そして、いいえ、Check (n) n = 0、... n = 9を呼び出すために10のテストをブロックすることは、私が探しているものではありません。

ありがとうございます。

答えて

2

NUnitのdata-driven testsを利用することができます。

[TestCase(10, Result = 5)] 
public int Check (int tries) 
    { 
    int fails = 0; 
    for (int i = 0; i < tries; i++) 
    { 
     if (i % 2 == 1) fails++; 
    } 
    return fails; 
} 
0

私は範囲属性

[Test] 
public int Check ([Range(0,100,1)] int tries) 
{ 
    for (int i = 0; i < tries; i++) 
    { 
     if (i % 2 == 1) Assert.Fail("failed on :" + i); 
    } 
} 
と一緒に行くことになりました
関連する問題