まず、ASP.NET Web ApiはあなたのJSONをオブジェクトに逆シリアル化するのに十分なほどスマートなので、実際に文字列の値を期待しない限り、そこに型を入れることができます。
[Route("gameworld/generate")]
public IHttpActionResult PostNewWorld([FromBody] WorldData newWorld)
あなたはPostmanまたはSwaggerのようなツールを使って手動でそれをテストすることができますいずれかが、手動テストは、通常、一回行われ、その後、忘れられています。これにより、将来の変更を行い、エンドポイントの再テストを忘れ、APIを使用してアプリケーションを中断させる回帰バグが開かれます。
そのため、コードをチェックして回帰バグを防ぐために単体テストを書く必要があります。いくつかのプロジェクトでMyTested.WebApiを使用していました。ルーティングと実際の呼び出しの両方をテストできます。たとえば、次のようにテストされるべきものがたくさんあります
MyWebApi
.Server()
.Working()
.WithHttpRequestMessage(req => req
.WithRequestUri("api/bugs")
.WithMethod(HttpMethod.Post)
.WithContent(myJsonString)
.ShouldReturnHttpResponseMessage()
.WithStatusCode(HttpStatusCode.Created)
.WithResponseModelOfType<BugReport>()
.Passing(r => r != null);
、そうdocs必ずお読みください。
これらのプロパティを持つクラスの使用を検討する必要があります。 –
@ DanielA.Whiteどういう意味ですか?名前と文字タイプ?どのように私はコントローラをテストすることができますか?ありがとう – SkyeBoniwell
webTypeでは 'characterType'プロパティを使ってこのメソッドにルーティングする方法を教えてくれません。 –