실제로 단위 테스트를 작성하지 않았습니다. 내 WebApi의 컨트롤러에서 HttpResponseMessage를 테스트하려고합니다. 나는 오류가 없다. 실제로 테스트는 내가 이상하다고 생각하는 초록색 체크로 끝난다. 어설 션을 두 번 체크하기 위해 디버깅을 할 때 나는 나의 어설트를 때리지 않았다는 것을 깨달았 기 때문이다. 여기에 내 시험이있다. 여기 WebApi Controller Unit 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);
}
I는이 광고에 도착 컨트롤러는 '새로운 HttpConfiguration dudeController.Configuration =(); " 그리고 그게 다야. 시험은 끝났어. 테스트는 통과로 표시됩니다.
이것은 .Net Framework WebApi와 Im은 xUnit을 사용하여 테스트합니다. 내 테스트가 왜 그 라인을 성공적인 테스트로 구상하는지에 대한 어떤 생각이라도 나는 정말로 도움이된다. 지금까지 내 검색에서 그걸 많이 발견하지 못했습니다.
***** 사람이 궁금 그냥 경우
면책 조항
이 테스트 컨트롤러에 대한 이상한 아무것도 없다. 코드 자체는 영화 The The Big Lebowski에 대한 경의 일뿐입니다. 그분은 영원히 '그 친구'가 될 것입니다. 그러나 나의 코드를 읽는 것은, 그것을 여기에서 보는 Im가 조금 우스운 것처럼 보입니다.