如何在ASP.NET Core Web API测试中使用Postman
使用Postman进行手动测试
如果您是开发人员,测试人员或管理人员,则在构建和使用应用程序时,有时了解各种API方法可能是一个挑战。
使用带有.NET Core的Postman为您的Web API生成良好的文档和帮助页面就像进行一些HTTP调用一样简单。
让我们开始从GitHub下载简单的待办事项。
从这个链接下载并运行下面的TodoMvcSolution 。
下载Postman
Postman是Google Chrome应用程序,用于测试API调用。您可以从下面的网站下载并安装Postman。
这里是我们可以测试的API - 获取,发布,放置和删除这个应用程序。
这里是我们要测试的Web API。
//Copyright 2017 (c) SmartIT. All rights reserved.
//By John Kocer
// This file is for Swagger test, this application does not use this file
using System.Collections.Generic;
using Microsoft.AspNetCore.Mvc;
using SmartIT.Employee.MockDB;
namespace TodoAngular.Ui.Controllers
{
[Produces("application/json")]
[Route("api/Todo")]
publicclass TodoApiController : Controller
{
TodoRepository _todoRepository = new TodoRepository();
[Route("~/api/GetAllTodos")]
[HttpGet]
public IEnumerable<SmartIT.Employee.MockDB.Todo> GetAllTodos()
{
return _todoRepository.GetAll();
}
[Route("~/api/AddTodo")]
[HttpPost]
public SmartIT.Employee.MockDB.Todo AddTodo([FromBody]SmartIT.Employee.MockDB.Todo item)
{
return _todoRepository.Add(item);
}
[Route("~/api/UpdateTodo")]
[HttpPut]
public SmartIT.Employee.MockDB.Todo UpdateTodo([FromBody]SmartIT.Employee.MockDB.Todo item)
{
return _todoRepository.Update(item);
}
[Route("~/api/DeleteTodo/{id}")]
[HttpDelete]
publicvoid Delete(int id)
{
var findTodo = _todoRepository.FindById(id);
if (findTodo != null)
_todoRepository.Delete(findTodo);
}
}
}
注 - 您的本地端口号可能与我的不同。使用您的本地端口号。
http:// localhost:63274 / api / GetAllTodos // GET
http:// localhost:63274 / api / AddTodo // POST
http:// localhost:63274 / api / UpdateTodo // PUT
http:// localhost:63274 / api / DeleteTodo / 5 // DELETE
用邮递员测试GET
测试GET非常简单。首先,我们需要从下拉列表中将HTTP Action设置为GET。
然后,我们需要输入或粘贴到API URL框中。
然后,点击蓝色的SEND按钮。
如果GET成功,我们看到状态:200 OK。 用邮递员测试POST
首先,我们需要将下拉列表中的Http Action设置为POST。
然后,我们需要输入或粘贴到API URL框中。
AddTodo API接受JSON格式的Todo对象。我们需要传递一个新的Todo JSON数据。
要传递JSON数据,我们需要选择Body Tap。
选择原始
选择JSON(应用程序/ JSON)作为文本格式。
编写或粘贴您的Todo JSON数据。
然后,点击蓝色的SEND按钮。
如果POST成功,我们看到状态:200 OK。
您将看到状态:200成功,返回值选项卡中的返回值。我们发送了id = 0的Publish Postman Todo项目,结果我们收到了id = 5。用邮递员测试PUT
首先,我们需要从下拉列表中将HTTP Action设置为PUT。
然后,我们需要输入或粘贴到API网址。
UpdateTodo API接受JSON格式的Todo对象。我们需要传递一个现有的Todo JSON数据。
要传递JSON数据,我们需要选择正文选项卡
选择原始格式
选择JSON(应用程序/ JSON)作为文本格式。
写或粘贴您的Todo JSON
然后点击蓝色的发送
如果PUT成功,我们看到状态:200 OK。
您将看到状态:200成功,返回正文标签中的返回值。我们发送发布邮差待办事项与“名称”:“发布邮递员进行中”,我们收到更新的待办事项结果。用Postman测试DELETE
首先,我们需要从下拉列表中将Http Action设置为DELETE。
然后,我们需要输入或粘贴到API URL框中。
DeleteTodo / 5 API接受一个ID我们需要通过一个Id值现有的Todo。
然后,点击蓝色的SEND按钮。
如果删除成功,我们看到状态:200 OK。这将完成邮差第1部分教程。在“第二部分使用邮递员进行自动化测试”中,我们将考察Postman API自动化测试,并编写一个脚本来运行持续集成测试用例。
概要
在本文中,我们学习了如何将Postman与ASP.NET Core Web API结合使用。
本文转自:https://www.toutiao.com/i6489186032729195021/,如需转载,请注明出处。
如何在ASP.NET Core Web API测试中使用Postman的更多相关文章
- 如何在ASP.NET Core Web API中使用Mini Profiler
原文如何在ASP.NET Core Web API中使用Mini Profiler 由Anuraj发表于2019年11月25日星期一阅读时间:1分钟 ASPNETCoreMiniProfiler 这篇 ...
- 从ASP.Net Core Web Api模板中移除MVC Razor依赖项
前言 :本篇文章,我将会介绍如何在不包括MVC / Razor功能和包的情况下,添加最少的依赖项到ASP.NET Core Web API项目中. 一.MVC VS WebApi (1)在ASP. ...
- ASP.NET Core Web API 集成测试中使用 Bearer Token
在 ASP.NET Core Web API 集成测试一文中, 我介绍了ASP.NET Core Web API的集成测试. 在那里我使用了测试专用的Startup类, 里面的配置和开发时有一些区别, ...
- 在ASP.NET Core Web API上使用Swagger提供API文档
我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页 ...
- ASP.NET Core Web API下事件驱动型架构的实现(二):事件处理器中对象生命周期的管理
在上文中,我介绍了事件驱动型架构的一种简单的实现,并演示了一个完整的事件派发.订阅和处理的流程.这种实现太简单了,百十行代码就展示了一个基本工作原理.然而,要将这样的解决方案运用到实际生产环境,还有很 ...
- Asp.Net Core Web Api图片上传(一)集成MongoDB存储实例教程
Asp.Net Core Web Api图片上传及MongoDB存储实例教程(一) 图片或者文件上传相信大家在开发中应该都会用到吧,有的时候还要对图片生成缩略图.那么如何在Asp.Net Core W ...
- 或许是你应该了解的一些 ASP.NET Core Web API 使用小技巧
一.前言 在目前的软件开发的潮流中,不管是前后端分离还是服务化改造,后端更多的是通过构建 API 接口服务从而为 web.app.desktop 等各种客户端提供业务支持,如何构建一个符合规范.容易理 ...
- 使用JWT创建安全的ASP.NET Core Web API
在本文中,你将学习如何在ASP.NET Core Web API中使用JWT身份验证.我将在编写代码时逐步简化.我们将构建两个终结点,一个用于客户登录,另一个用于获取客户订单.这些api将连接到在本地 ...
- ASP.NET Core Web API 索引 (更新Identity Server 4 视频教程)
GraphQL 使用ASP.NET Core开发GraphQL服务器 -- 预备知识(上) 使用ASP.NET Core开发GraphQL服务器 -- 预备知识(下) [视频] 使用ASP.NET C ...
随机推荐
- vue2组件之select2调用
目前,项目中使用了纯前端的静态项目+RESTFul接口的模式.为了更好的对数据进行操作,前端使用了vue2的mvvm功能,但是由于不是单页面应用,所以,并没有涉及到其它的如vue-route等功能,也 ...
- js-注释代码习惯
功能块代码 /** * xxxx */ 定义的函数或方法 /* xxxx */ 调用了某个函数或方法 // <--xxx
- Vue 爬坑之路(六)—— 使用 Vuex + axios 发送请求
Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource 目前主流的 Vue 项目,都选择 axios ...
- zoj3211dream city dp 斜率
Dream City Time Limit: 1 Second Memory Limit:32768 KB JAVAMAN is visiting Dream City and he see ...
- IDL 字符串
1.创建字符串 字符串和字符串数组通过赋值或函数方式来创建.在IDL字符串用" "或' '括起来表示. IDL> s1="abcdef" IDL> ...
- web项目jsp出现The superclass javax.servlet.http.HttpServlet was not found on the Java Build Path错误
原因是Javaweb工程类中没有添加Tomcat运行时相关类导致. 解决方式如下:出错的文件---->>build path---->>config build path--- ...
- jquery系列教程7-自定义jquery插件全解:对象函数、全局函数、选择器
点击打开: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件操作全解 jquery系列教程5-动 ...
- Android之View绘制流程源码分析
版权声明:本文出自汪磊的博客,转载请务必注明出处. 对于稍有自定义View经验的安卓开发者来说,onMeasure,onLayout,onDraw这三个方法都不会陌生,起码多少都有所接触吧. 在安卓中 ...
- windows下LINUX模拟终端Cypwin以及Vim的配置使用
Cypwin的安装 从官网下载相应版本后,直接安装. 官网地址:Cypwin 安装过程中可以选择相应的Packages,我们需要安装的Vim就需要在这一步中选择相应的包. Cypwin的使用 纯命令行 ...
- JS 巧用 && 与 ||
在对于流程控制语句当中,我们最熟悉不过的就是 if (条件){ //代码块 }else{ //代码块 } 对于一个执行不同的代码来说,如果执行的代码很多,可能就有必要使用上面这种方式 但往往我们开发当 ...