0

私は実際には単体テストを書いていません。私のWebApiのコントローラからHttpResponseMessageをテストしようとしています。私はエラーはありません。実際にテストは緑色のチェックで完了します。私は奇妙に思えます。なぜなら、デバッグしてアサートをダブルチェックすると、ここに私のテストがあります。ここでWebApiコントローラユニットテストがHttpResponseMessageで動作しない

[Fact] 
    public void TestDudeManController() 
    { 
     //arrange 
     DudeManModel dmmRequest = new DudeManModel(); 
     DudeManModel dmmResponse = new DudeManModel(); 
     HttpResponseMessage hrm = new HttpResponseMessage(); 
     dmmRequest.Name = "Test-Duder"; 
     dmmResponse.Name = "Hey " + dmmRequest.Name + ", Im The Dude man."; 
     var dudeController = new DudeManController();   
     dudeController.Request = new HttpRequestMessage(); 
     dudeController.Configuration = new HttpConfiguration();  

     //act 
     hrm = dudeController.Dude(dmmRequest); 

     //assert 
     //Assert.Equal(4, 4); 
     Assert.True(hrm.IsSuccessStatusCode);   

    } 

基本的に私はこの行を取得コントローラ

[HttpPost] 
    [Route("dude")] 
    public HttpResponseMessage Dude([FromBody]DudeManModel name) 
    { 
     log.Info("WEBAPI POST INITIATED::NAME IS::" + name.Name); 

     name.Name = "Hey " + name.Name + ", Im The Dude man."; 
     name.Link = "dude.png"; 

     log.InfoFormat("WEBAPI POST UPDATED::NAME IS::{0}::PIC IS::{1}", name.Name, name.Link); 

     return Request.CreateResponse(HttpStatusCode.OK, name); 
    } 

は 'dudeController.Configurationは=新しいHttpConfiguration();'以上です。テストは終わった。テストは合格とマークされます。

これは標準の.NET Framework WebApiとImで、xUnitを使ってテストしています。なぜ私のテストが成功したテストとしてそのラインを唱えているのか、どんな考えでも、私は本当に助けに感謝します。今のところ私の検索結果からそれほど多くは見つけられません。

*****免責事項

だけで、誰もが疑問に思っている場合には、このテストコントローラについて奇妙なものは何もありません。コード自体はThe Big Lebowskiの映画にちょうど敬意を表しています。彼は永遠に「恋人」になるでしょう。しかし、私のコードを読んで、それはここでそれを見ている私はちょっと面白く見える。

答えて

0

これは不思議ですが、私のプロジェクトはVisual Studioでリリースするように設定されていましたが、デバッグに切り替えました。今すぐ動作します。私はアサルトになっています。簡単な修正。なぜ誰かが私に知らせてくれるものがあれば、その理由についてはわかりません。

関連する問題