一、WebApiTestClient介绍

1、WebApiTestClient组件作用主要有以下几个:

(1)、将WebApi的接口放到了浏览器里面,以可视化的方式展现出来,比如我们通过http://localhost:11095/Help这个地址就能在浏览器里面看到这个服务里面所有的API接口以及接口的详细说明。

(2)、能够详细查看API的类说明、方法说明、参数说明、返回值说明。只需要我们在定义方法时候加上 /// 这种详细注释即可,组件自动读取注释里面的内容展现在界面上面。

(3)、可以修改http请求头文件Head和请求体Body里面的参数,指定发送http请求的特性,比如指定我们最常见的contentType指示参数的类型。

(4)、组件拥有测试接口的功能,用过Soup UI的朋友应该知道,通过Soup UI能够方便测试WebService参数以及返回值。我们的WebApiTestClient也可以实现类似的功能,直接通过页面上的测试按钮,就能测试接口。

2、WebApiTestClient是一个开源组件。开源地址:https://github.com/yaohuang/WebApiTestClient

二、项目示例

1、新建API项目并然后通过Nuget引入组件

引入成功后,将向项目里面添加一些主要文件:

Scripts\WebApiTestClient.js
Areas\HelpPage\TestClient.css
Areas\HelpPage\Views\Help\DisplayTemplates\TestClientDialogs.cshtml
Areas\HelpPage\Views\Help\DisplayTemplates\TestClientReferences.cshtml

2、使用组件

1、修改Api.cshtml文件

通过上述步骤,就能将组件WebAPITestClient引入进来。下面我们只需要做一件事:打开文件 (根据 Areas\HelpPage\Views\Help) Api.cshtml 并添加以下内容:

@Html.DisplayForModel(“TestClientDialogs”)
@Html.DisplayForModel(“TestClientReferences”)
添加后Api.cshtml文件的代码如下

@using System.Web.Http
@using WebApiTestClient.Areas.HelpPage.Models
@model HelpPageApiModel@{var description = Model.ApiDescription;ViewBag.Title = description.HttpMethod.Method + " " + description.RelativePath;
}<link type="text/css" href="~/Areas/HelpPage/HelpPage.css" rel="stylesheet" />
<div id="body" class="help-page"><section class="featured"><div class="content-wrapper"><p>@Html.ActionLink("Help Page Home", "Index")</p></div></section><section class="content-wrapper main-content clear-fix">@Html.DisplayForModel()</section>
</div>@Html.DisplayForModel("TestClientDialogs")
@section Scripts{<link href="~/Areas/HelpPage/HelpPage.css" rel="stylesheet" />@Html.DisplayForModel("TestClientReferences")
}

3、配置读取注释的xml路径

其实,通过上面的步骤,我们的项目已经可以跑起来了,也可以调用接口测试。但是,还不能读取 /// 注释里面的东西。需要做如下配置才行。

(1)配置生成xml的路径。我们在项目上面点右键→属性→生成标签页配置xml的路径

4、在xml的读取路径:在下图的HelpPageConfig.cs里面配置一句话,指定xml的读取路径。

config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/WebApiTestClient.XML")));

5、测试接口

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;namespace WebApiTestClient.Areas.HelpPage.Controllers
{/// <summary>/// 测试API Test Client/// </summary>public class TestController : ApiController{/// <summary>/// 得到所有数据/// </summary>/// <returns>返回数</returns>// GET: api/Testpublic IEnumerable<string> Get(){return new string[] { "value1", "value2" };}/// <summary>/// 根据当前ID得到所有数据/// </summary>/// <param name="id"></param>/// <returns></returns>// GET: api/Test/5public string Get(int id){return "value"+id.ToString();}/// <summary>/// POST/// </summary>/// <param name="value"></param>// POST: api/Testpublic bool Post([FromBody]string value){return true;}/// <summary>/// PUT/// </summary>/// <param name="id"></param>/// <param name="value"></param>// PUT: api/Test/5public int Put(int id, [FromBody]string value){return id;}/// <summary>/// DEL/// </summary>/// <param name="id"></param>// DELETE: api/Test/5public int Delete(int id){return id;}}
}

6、我们在url里面敲地址http://localhost:11095/Help/Index或者http://localhost:11095/Help就能得到上述效果。

点击get方法

WebAPI测试接口工具-WebApiTestClient相关推荐

  1. 干掉 Postman?测试接口直接生成API文档,这工具真香!

    前几天粉丝群有小伙伴问,有啥好用的API文档工具推荐,无意间发现了一款工具,这里马不停蹄的来给大家分享一下. ShowDoc一个非常适合团队的在线API文档工具,也支持用docker自建文档服务,不过 ...

  2. 干掉 Postman?测试接口直接生成API文档,这个工具我爱了

    前几天粉丝群有小伙伴问,有啥好用的API文档工具推荐,无意间发现了一款工具,这里马不停蹄的来给大家分享一下. ShowDoc一个非常适合团队的在线API文档工具,也支持用docker自建文档服务,不过 ...

  3. linux webapi测试,Webapi管理和性能测试工具WebBenchmark

    WebBenchmark是一款基于开源通讯组件Beetlex扩展的Webapi管理和性能测试工具,在传统工具中一般管理工具缺乏性能压测能力或有性能测试的缺少管理功能:WebBenchmark的设计目标 ...

  4. 干掉 Postman?测试接口直接生成API文档,这个工具贼好用

    大家好,我是小码哥~ 前几天粉丝群有小伙伴问,有啥好用的API文档工具推荐,无意间发现了一款工具,这里马不停蹄的来给大家分享一下. ShowDoc一个非常适合团队的在线API文档工具,也支持用dock ...

  5. 测试接口生成文档的工具 APIFOX

    超乎意料好用的接口测试工具! 和Postman相似的操作流程,能测试接口,能自动生成文档,支持不同环境的变量配置,支持保存测试用例,支持导入其他软件的测试接口文件,支持多人在线查看和测试接口,支持多项 ...

  6. 隧道接口工具airtun-ng

    隧道接口工具airtun-ng airtun-ng是aircrack-ng套件提供的一个工具.该工具可以为无线网卡建立隧道接口.通过该接口,渗透测试人员可以建立wIDS,分析指定的AP的数据.借助该接 ...

  7. python测试开发自学教程-Web开发哪家强?看我用 Python 写一个颜值测试小工具

    我们知道现在有一些利用照片来测试颜值的网站或软件,其实使用 Python 就可以实现这一功能,本文我们使用 Python 来写一个颜值测试小工具. 简介 要实现颜值测试功能,大致有两种方式:一种是自己 ...

  8. Hasor【付诸实践 03】Dataway 无代码接口工具 DataQL 聚合查询引擎使用 Mybatis 实现分页查询举例说明 + 问题分析(针对GreenPlum数据库)

    Hasor 框架 Dataway 使用可参考我之前分享的 SpringBoot 集成 Hasor[Dataway 无代码接口工具]配置及问题解决 .这里记录一下使用DataQL遇到的问题. 1.举例及 ...

  9. Postman——导出测试接口集合的Collection文件

    基本概念 Postman:Postman是Chrome的一款一个非常强大的模拟提交测试工具(包括插件版和本地应用版),用于做接口请求测试,无论是前端,后台还是测试人员,都可以用Postman来测试接口 ...

最新文章

  1. Android改变移动网络ip地址,Android之获取移动网络ip
  2. java自学语法_java 基础语法学习
  3. python字典的键可以是元组吗_python字典的键可以是元组吗
  4. 什么样的人去贷款最受银行欢迎?
  5. Apollo 配置中心:分布式部署
  6. matlab光盘映像文件可以删除吗_DVD-Cloner 2020 for mac(DVD光盘刻录工具) 7.00.715
  7. 计算机文档设置,电脑这样设置快速的共享文件、分享文档!
  8. java 不定参数_Java不定参数
  9. 点击编辑,进入编辑页面并把值渲染到页面上
  10. uniapp实例笔记
  11. SEO关键词产出之词频分析(关键词工具篇)
  12. 查看APK文件源代码
  13. 一套非常精美的全球地貌晕渲图,有想要的吗?
  14. 软件是指示计算机运行所需的程序,计算机基础知识A.ppt
  15. 【生信】全基因组测序(WGS)
  16. PS技巧分享,不容错过
  17. c语言结构体类型变量在程序运行期间(),C语言结构体类型变量在程序运行期间( )...
  18. Idea中文件图标发生变化,导致文件显示出现异常
  19. 20世纪英国癌症三级预防研究
  20. 解压上传zip文件并获取excel表数据

热门文章

  1. C#控制多线程最大并行数量
  2. redhead红帽系统配置yum源
  3. (zz)DotA的爱情哲理
  4. 基于Python的图像分类 项目实践——图像分类项目的指导文档
  5. 【教程】区块链遇curl: (28) Operation too slow. Less than 102400 bytes/ sec transferred the last 20 seconds问题
  6. setTimeout 和 clearTimeout
  7. css 去掉li 标签列表项前面的点
  8. JDBC使用Java反射万能查询Oracle表数据、插入数据——【JDBC编程】
  9. LiteOS内核教程03 | 任务管理(超简洁API,一行代码即可创建任务)
  10. 【甄选靶场】Vulnhub百个项目渗透——项目十八:pwnlab_init(LFI本地文件包含,PHP伪协议,文件上传绕过,逆向分析)