2017-02-09 3 views
0

デフォルトではFixieは、Tests postfixのクラスのテストメソッドを賢く探します。それは円滑に動作し、すべてのテストは面倒なxUnitスタイルの属性なしで実行されます。しかし、私は、テスト対象のメソッドの名前に応じてネストされたクラスにグループに私のテストを傾向がある:テストがこのようにグループ化されている場合はサブクラスでテストメソッドを見つけるためのフィギュアコンベンション

public class ConnectorTests 
{ 
    public class Connect 
    { 
    ... //Connect method tests 
    } 

    public class Disconnect 
    { 
    ... //Disconnect method tests 
    } 
} 

、ピストは、デフォルトの大会で試験方法が表示されません。それを修正するためにカスタムコンベンションはどのように見えますか?

答えて

0

は、私は、次の規則書いてしまった:私は直接xxxTestsクラスのテストメソッドを持っている場合

class TestingConvention : Convention 
    { 
     public TestingConvention() 
     { 
      Classes 
       .Where(x => 
       { 
        if (x.Name.EndsWith("Tests")) 
         return true; 

        if (x.DeclaringType != null && x.DeclaringType.Name.EndsWith("Tests")) 
         return true; 

        return false; 
       }); 
     } 
    } 

それは両方のケースをカバーし及び試験方法(テストクラスは1公共クエリ/コマンドハンドラのようなメソッドを持っている場合)インナークラスに配置されています。

関連する問題