我们如何测试 C# Asp.Net WebAPI?
csharpserver side programmingprogramming更新于 2025/4/15 0:07:17
测试 WebApi 涉及发送请求和接收响应。有几种方法可以测试 WebApi。在这里,我们将使用 postman 和 swagger 测试 WebApi。让我们创建一个如下所示的 StudentController。
Student 模型
namespace DemoWebApplication.Models{
public class Student{
public int Id { get; set; }
public string Name { get; set; }
}
}
Student 控制器
示例
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 是用于记录 REST API 的规范。它指定了描述 REST Web 服务的格式(URL、方法和表示)。方法、参数和模型描述紧密集成到服务器代码中,从而保持 API 及其文档的同步。
在我们的应用程序中,使用管理 Nuget 包安装 swagger。

运行我们的 WebApi 项目并在 URL 中输入 swagger/ui/index。

swagger 将自动列出控制器及其操作方法,如下所示。我们可以扩展相应的控制器并使用我们的请求测试端点。
获取所有学生请求

获取所有学生的回应

获取学生 ID 请求

获取学生 ID 响应

使用 Postman 进行测试
Postman 是一个流行的 API 客户端,它使开发人员能够轻松创建、共享、测试和记录 API。这是通过允许用户创建和保存简单和复杂的 HTTP/s 请求以及阅读其响应来实现的。结果 - 工作更高效,更轻松。Postman 可以作为应用程序安装,也可以通过浏览器发送,如下所示。

获取所有学生的请求和响应

获取学生 ID 的请求和响应

相关文章
打印
下一节:What is the usage of DelegatingHandler in Asp.Net webAPI C#? ❯❮ 上一节:如何使用 C# 从其他应用程序使用 Asp.Net WebAPI 端点?

