2017-02-20 7 views
0

Web API ASP.Netコアでユニットテスト例外フィルタを設定する方法。 onExceptionメソッドをモックしたくない。私はユニットテストで以下のようなControllerContextを嘲笑しました。 Web APIから呼び出されたクラスライブラリは例外フィルタによって捕捉されたカスタム例外をスローし、私はそれをユニットテストしたいと思います。今日私は "値が期待範囲内に収まらない"というエラーを受けます。Web API ASP.Netコアでユニットテスト例外フィルタを設定する方法。 onceptionメソッドを模擬したくない

public static ControllerContext GetMockControllerContext(
     this Controller controller, 
     RouteData routeData) 
    { 

     var actionContext = new ActionContext 
     { 
      HttpContext = new DefaultHttpContext 
      { 
       User = controller.GetMockUserContext() 
      }, 
      RouteData = routeData, 
      ActionDescriptor = new ControllerActionDescriptor() 
     }; 
     return new ControllerContext(actionContext); 
    } 

答えて

2

documentationに覆われたように私はTESTSERVERを使用して統合テストを記述します。これは実際の単体テストと同じくらい速い速度で実行されますが、実際のMVCコンテキスト/パイプライン内でフィルタが動作することを示すので、はるかに価値があります。

関連する問題