如何在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 ...
随机推荐
- 深入理解计算机系统(4.2)------逻辑设计和硬件控制语言HCL
上一篇博客我们简单介绍了Y86指令集体系,而这篇博客我们将介绍指令集体系的逻辑设计和硬件控制语言HCL,为后面去实现Y86打下基础. 在硬件设计中,用电子电路来计算对位进行运算的函数,以及在各种存储器 ...
- WPF 设置输入只能英文
有时输入只能让用户输入英文,那么如何设置输入只能英文? 首先在xaml 写一个 TextBox ,给他一个名字. <TextBox x:Name="txt"></ ...
- eclipse环境下,java操作MySQL的简单演示
首先先通过power shell 进入MySQL 查看现在数据库的状态(博主是win10系统) 右键开始,选择Windows powershell ,输入MySQL -u用户名 -p密码 选择数据库( ...
- coursera_poj_魔兽世界终结版
五个下午的时间!!!!终于过了!!有史以来做的最复杂的一个题这是我迄今为止做的最复杂也最具有挑战的一个oj作业.虽然之前做过比这个规模一些作业项目,但是往往有简单的模块框架,模块之前的关系也只是有些简 ...
- 简易RPC框架-客户端限流配置
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- BandwagonHost搬瓦工VPS自建
地址:https://bwh1.net/aff.php?aff=18648 ,购买$2.99的就够用了(现在没有$2.99的了,最低是$4.99) 步骤一: 步骤二: 步骤三:选图中的选项,然后点 A ...
- Yii2之事件
众所周知,yii的三大特性是:属性.事件.行为,上一篇博文简单讲解了yii中的属性,本文接着讲讲yii的事件. 事件是代码解耦的一种方式,设计业务流程的一种模式.在yii2.0中,通过Yii\base ...
- Linux系统Shell脚本编程
1. shell脚本概念:C语言编写的.命令解释器.编程语言. 是用户使用linux的桥梁. shell脚本语言非常擅长处理文本类型的数据. 2. shell脚本作用:自动化管理.监控管理.日志数据处 ...
- LeetCode 572. Subtree of Another Tree (是否是另一个树的子树)
Given two non-empty binary trees s and t, check whether tree t has exactly the same structure and no ...
- LeetCode 292. Nim Game (取物游戏)
You are playing the following Nim Game with your friend: There is a heap of stones on the table, eac ...