C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#Asp.Net WebAPIをテストするにはどうすればよいですか?


WebApiのテストには、要求の送信と応答の受信が含まれます。 WebApiをテストする方法はいくつかあります。ここでは、postmanとswaggerを使用してWebApiをテストします。以下のようなStudentControllerを作成しましょう。

学生モデル

namespace DemoWebApplication.Models{
   public class Student{
      public int Id { get; set; }
      public string Name { get; set; }
   }
}

学生コントローラー

using DemoWebApplication.Models;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;
namespace DemoWebApplication.Controllers{
   public class StudentController : ApiController{
      List<Student> students = new List<Student>{
         new Student{
            Id = 1,
            Name = "Mark"
         },
         new Student{
            Id = 2,
            Name = "John"
         }
      };
      public IEnumerable<Student> Get(){
         return students;
      }
      public Student Get(int id){
         var studentForId = students.FirstOrDefault(x => x.Id == id);
         return studentForId;
      }
   }
}

Swaggerを使用したテスト

Swaggerは、RESTAPIを文書化するための仕様です。これは、REST Webサービスを記述するための形式(URL、メソッド、および表現)を指定します。メソッド、パラメーター、モデルの説明はサーバーコードに緊密に統合されているため、APIとそのドキュメントの同期が維持されます。

このアプリケーションでは、ManageNugetパッケージを使用してSwaggerをインストールします。

C#Asp.Net WebAPIをテストするにはどうすればよいですか?

WebApiプロジェクトを実行し、 swagger / ui / indexと入力します URLで。

C#Asp.Net WebAPIをテストするにはどうすればよいですか?

スワッガーは、以下のようにコントローラーとそのアクションメソッドを自動的に一覧表示します。それぞれのコントローラーを拡張し、リクエストを使用してエンドポイントをテストできます。

すべての生徒のリクエストを取得

C#Asp.Net WebAPIをテストするにはどうすればよいですか?

すべての生徒の回答を得る

C#Asp.Net WebAPIをテストするにはどうすればよいですか?

学生にIDリクエストを依頼する

C#Asp.Net WebAPIをテストするにはどうすればよいですか?

生徒にID応答を依頼する

C#Asp.Net WebAPIをテストするにはどうすればよいですか?

Postmanを使用したテスト

Postmanは人気のあるAPIクライアントであり、開発者がAPIを簡単に作成、共有、テスト、文書化できるようにします。これは、ユーザーが単純で複雑なHTTP / s要求を作成および保存し、応答を読み取ることを可能にすることによって行われます。その結果、より効率的で面倒な作業が減ります。 Postmanは、アプリケーションとしてインストールすることも、以下のような送信ブラウザにすることもできます。

C#Asp.Net WebAPIをテストするにはどうすればよいですか?

すべての生徒のリクエストと応答を取得する

C#Asp.Net WebAPIをテストするにはどうすればよいですか?

生徒にIDのリクエストと応答を依頼する

C#Asp.Net WebAPIをテストするにはどうすればよいですか?


  1. C#ASP.NET WebAPIでCORSの問題を解決するにはどうすればよいですか?

    クロスオリジンリソースシェアリング (CORS)は、追加のHTTPヘッダーを使用して、あるオリジンで実行されているWebアプリケーションに、別のオリジンから選択されたリソースへのアクセスを許可するようにブラウザーに指示するメカニズムです。 Webアプリケーションは、自身とは異なるオリジン(ドメイン、プロトコル、またはポート)を持つリソースを要求すると、クロスオリジンHTTPリクエストを実行します。 たとえば、フロントエンド(UI)とバックエンド(サービス)を持つアプリケーションについて考えてみましょう。フロントエンドがhttps://demodomain-ui.comから提供されているとしま

  2. C#ASP.NET WebAPIのアクションメソッドからカスタム結果タイプを返す方法は?

    IHttpActionResultインターフェイスを実装することで、結果タイプとして独自のカスタムクラスを作成できます。 。 IHttpActionResultには、HttpResponseMessageインスタンスを非同期的に作成する単一のメソッドExecuteAsyncが含まれています。 public interface IHttpActionResult {    Task<HttpResponseMessage> ExecuteAsync(CancellationToken    cancellationToken); } コントロ