,,详解C# WebApi 接口测试工具:WebApiTestClient

,,详解C# WebApi 接口测试工具:WebApiTestClient

本文主要介绍了C# WebApi接口测试工具WebApiTestClient的详细说明。边肖认为这很好。现在分享给大家,给大家一个参考。来和边肖一起看看吧。

这两天,整个WebApi服务已经完成。由于调用者是Android客户端,Android开发者不知道C#语法,API中的接口无法直接展现给他们。除了完整的详细文档,别无他法。因为接口数量有点多,每个接口都要指定接口函数、参数类型、返回值类型等。而且写着写着就烦博主。这种文档一定要自己写吗?网上没有这种文档的展示工具吗?带着这两个问题,去网络世界找找吧。网络世界很精彩,只要你用心,总能找到或多或少的帮助!这也是为什么博主们找到了这个易用的组件:WebApiTestClient。它可以显示接口的功能、参数的功能、类型、返回值的描述等。它还提供了测试调用的功能。您可以通过输入测试参数发送请求来获得相应的返回结果。哇,这一系列可视化的效果不正是博主需要的吗?他们应该写什么文件?快用起来!

一、WebApiTestClient介绍

1.WebApiTestClient组件具有以下功能:

(1)将WebApi的界面放到浏览器中,可视化显示。比如我们可以通过http://localhost:8080/Help的地址在浏览器中看到这个服务中的所有API接口以及接口的详细描述,省去了我们手写接口文档的麻烦。

(2)可以详细查看API的类描述、方法描述、参数描述、返回值描述。我们只需要在定义方法时添加类似///summary这样的详细注释,组件就会自动读取注释中的内容并显示在界面上。

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

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

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

二、WebApiTestClient展示

第一印象:界面列表。

单击接口以查看接口详细信息。比如本文看Get request的无参数方法,右下角有一个测试接口的按钮。

单击测试API按钮。

单击“发送”发送请求。

第二个带参数的界面

手动输入参数以获得返回的结果。

如果参数类型是对象,可以直接解析类定义上的///摘要标签,如下所示

因为是post请求,如果需要执行参数length和type,可以通过content-length和content-type来指定。并且具体参数可以用不同的格式显示,比如下图中的application/json和application/xml。

获取返回值

三、WebApiTestClient使用

1、如何引入组件

首先,我们需要定义一个API项目。

然后通过Nuget引入组件,如下图所示。记得选下图第三个。

成功引入后,一些主要文件将被添加到项目中:

Scripts\WebApiTestClient.js

Areas\HelpPage\TestClient.css

areas \ Help page \ Views \ Help \ display templates \ testclientdialogs . cs html

areas \ Help page \ Views \ Help \ display templates \ testclientreferences . cs html

2、如何使用组件

1.修改Api.cshtml文件。

通过以上步骤,可以引入组件WebAPITestClient。我们只需要做下面一件事:打开文件(根据AREAS \ Help Page \ Views \ Help)API . cs html并添加以下内容:

@Html。DisplayForModel(' TestClientDialogs ')

@Html。DisplayForModel(' TestClientReferences ')

添加Api.cshtml文件的代码如下

@使用系统。网页

@使用WebApiTestClient。区域.帮助页面.模型

@model HelpPageApiModel

@{

var描述=型号。API描述;

取景袋.标题=描述HttpMethod。方法""描述。相对路径;

}

link type=' text/CSS ' href=' ~/Areas/help page/help page。CSS ' rel='外部无跟随' rel='外部无跟随' rel='样式表'/

div id='body' class='help-page '

section class='精选'

div class='内容包装'

p

@Html .ActionLink('帮助页面主页','索引)

/p

/div

/部分

section class=' content-wrapper main-content clear-fix '

@Html .DisplayForModel()

/部分

/div

@Html .DisplayForModel(' TestClientDialogs ')

@部分脚本{

link href=' ~/Areas/help page/help page。CSS ' rel='外部无跟随' rel='外部无跟随' rel='样式表'/

@Html .DisplayForModel(' TestClientReferences ')

}

2、配置读取注释的可扩展标记语言路径

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

(1)配置生成可扩展标记语言的路径。我们在项目上面点右键属性生成标签页配置可扩展标记语言的路径

(2)在可扩展标记语言的读取路径:在下图的HelpPageConfig.cs里面配置一句话,指定可扩展标记语言的读取路径。

这句代码如下:

复制代码代码如下:配置SetDocumentationProvider(新的XML文档提供程序(http上下文.当前。服务器。mappath(' ~/App _ Data/WebApiTestClient .XML '))))));

3、测试接口

///摘要

///测试应用程序接口测试客户端

////摘要

公共类TestChargingDataController:API控制器

{

///摘要

///得到所有数据

////摘要

///返回返回数据/退货

[HttpGet]

公共字符串GetAllChargingData()

{

返回"计费数据";

}

///摘要

///得到当前身份的所有数据

////摘要

///param name='id '参数id/参数

///返回返回数据/退货

[HttpGet]

公共字符串GetAllChargingData(字符串id)

{

返回"计费数据“id;

}

///摘要

///发布提交

////摘要

///param name='oData '对象/param

///返回提交是否成功/退货

[HttpPost]

公共图书馆(TB _收费oData)

{

返回真实的

}

///摘要

///上传请求

////摘要

///param name='oData '对象/param

///返回提交是否成功/退货

[HttpPut]

公共布尔输入(TB _充电oData)

{

返回真实的

}

///摘要

///删除操作

////摘要

///param name='id '对象id/参数

///返回操作是否成功/退货

[HttpDelete]

公共布尔值删除(字符串id)

{

返回真实的

}

}

///摘要

///充电对象实体

////摘要

公共类TB _收费

{

///摘要

///主键身份

////摘要

公共字符串ID { get设置;}

///摘要

///充电设备名称

////摘要

公共字符串名称{获取设置;}

///摘要

///充电设备描述

////摘要

公共字符串DES { get设置;}

///摘要

///创建时间

////摘要

公共日期时间CREATETIME { get设置;}

}

至此,组件就搭完了,剩下的就是运行了。我们在全球资源定位器(统一资源定位器)里面敲地址http://本地主机:8080/帮助/索引或者http://本地主机:8080/帮助就能得到上述效果。还不赶紧试试~~

四、总结

上面简单总结了下WebApiTestClient的使用,如果你的WebApi也是一个单独的服务,可以整起来当帮助文档用,省得你自己写。哈哈,不要谢我,请叫我红领巾。欢迎推荐演示。下载密码:u13g

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 设计一个简单的C#控制台应用程序,C#控制台程序,C# 创建控制台应用程序
  • 深入解析windows第8版,深入解析C#(第4版)
  • 数组代码,c# 数组操作,C# 数组实例介绍(图文)
  • 学会C#要多久,学会c#要多久,c#学习之30分钟学会XAML
  • 回溯法01背包问题c,回溯法求解01背包问题伪代码,C#使用回溯法解决背包问题实例分析
  • xml文件转义字符,xml转意字符,C# XML中的转义字符操作
  • winform 进度条控件,c# 进度条使用
  • winform 进度条控件,c# 进度条使用,C#使用winform实现进度条效果
  • winform backgroundworker,c# isbackground
  • winform backgroundworker,c# isbackground,C# BackgroundWorker用法详解
  • lua与c#交互,lua c#
  • lua与c#交互,lua c#,ToLua框架下C#与Lua代码的互调操作
  • linq c#,linq原理 c#
  • linq c#,linq原理 c#,c#中LINQ的基本用法实例
  • java decimal保留两位小数,sql中decimal函数保留2位小数,C#中decimal保留2位有效小数的实现方法
  • 留言与评论(共有 条评论)
       
    验证码: