系列目录

1、Taurus.MVC WebAPI  入门开发教程1:框架下载环境配置与运行。

2、Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World。

3、Taurus.MVC WebAPI 入门开发教程3:路由类型和路由映射。

4、Taurus.MVC WebAPI 入门开发教程4:控制器方法及参数定义、获取及基础校验属性【Require】。

5、Taurus.MVC WebAPI 入门开发教程5:控制器安全校验属性【HttpGet、HttpPost】【Ack】【Token】【MicroService】。

6、Taurus.MVC WebAPI 入门开发教程6:全局控制器DefaultController与全局事件。

7、Taurus.MVC WebAPI 入门开发教程7:业务逻辑基类LogicBase的使用。

8、Taurus.MVC WebAPI 入门开发教程8:WebAPI文档与自动化测试。

后续还有两个系列:

1、Taurus.MVC 微服务 入门开发教程系列。

2、Taurus.MVC Web应用 入门开发教程系列。
 

前方:

本篇介绍框架的WebAPI文档与自动化测试

1、控制器,项目属性里需要勾选输出Xml文档选项:

  

然后,针对方法写好注释即可,示例:


  /// <summary>
  /// 微服务测试
  /// </summary>

public class MSController : Controller
    {
        /// <summary>
        /// Get or Post 测试
        /// </summary>
        /// <param name="custom" type="header">post 消息</param>
        /// <param name="msg" required="true">post 消息</param>
        /// <param name="file" type="file">文件</param> 
      /// <returns>返回Json数据</returns>
[HttpGet] [HttpPost] [MicroService] public void Hello(string msg, System.Web.HttpPostedFile file) { if (file != null) { file.SaveAs(file.FileName); } if (Request.UrlReferrer != null) { Write("From : " + Request.UrlReferrer.ToString() + "\r\n"); } Write("MicroService : " + MicroService.Config.AppRunUrl + Request.Url.LocalPath + " : " + Request.HttpMethod + " : " + msg ?? "Hello" + MicroService.Config.ServerName); }

类特别说明:

1、类必须为Public;

2、类必须有注释说明,否则API文档上会忽略不显示。

方法特别说明:

1、type的类型有三种:text(默认)、header(请求头)、file(文件)

2、必填说明:required="true"

3、请求需要参数可以通过注释新增,不一定需要定义为方法参数。

2、下载文档的网页数据

如果是用源码开发的,则默认自带,如果是自己项目新建引用Nuget的,则需要下载:点击下载

说明:

对于版本(>V3.0.3)会直接打包进Nuget中,引用即生成,不需要重新下载。

下载后解压到目录下,最终目录为:

.Net Framework 目录:/Views/Doc/....

.Net Core 目录:/wwwroot/Views/Doc/....

3、运行访问网址

路径为运行路径 /doc

特别说明:

如果样式没出来,可能是缺少对静态文件的处理,补上一条即可:

app.UseStaticFiles();

 

 

这里点去,找到刚才注释的那个方法:

 

 

 点进详情页:

 

 这里就可以看到详细的接口文档。

参数的默认值,可以通过注释上初始定义、也可以通过Url的参数,如:msg=xxx来初始,也可以通过代码来初始:

        /// <summary>
        /// 全局【方法执行前拦截】
        /// 启用时:先全局,再执行局部(若存在)。
        /// </summary>
        public static bool BeforeInvoke(IController controller, string methodName)
        {
            if (controller.ControllerName == "doc")
            {
                controller.SetQuery("msg", "初始msg参数值。");
            }

            return true;
        }

4、接口测试:

可以在上图的示例值中:输入参数值,在运行请求边上:选择请求类型,和返回数据类型,然后点运行请求:

 

这样就完成轻松的 ,框架会在浏览器端缓存最后一次输入的请求参数,以后后续的测试或批量测试。

5、批量测试:

单个接口测试完后,返回控制器列表:

 

这里点击:RunAll,框架会拿最后一次测试的缓存在浏览器中的数据进行批量测试。 

 

这里可以看到批量的请求结果,第1个本来也是false。

因为上一次执行的类型写的是json,把它改成text执行了一次,回来再批量才成true。 

6、微服务文档

如果框架做为微服务的注册中心,左侧目录则会出现各微服务中心的模块和地址,点击即可跳转过去文档中心。

如果其它应用也是Taurus.MVC 开发,则很方便,如果是其它应用的,最好映射到host/doc目录。

 

 说明:

当前是最省事的做法,后续会考虑直接在当前应用上生成测试文档,直接即可访问,而不用跳转。

总结:

本篇介绍了文档的生成、测试、批量测试与自动化测试。

后续将开启Taurus.MVC 微服务系列教程(部署教程)。

posted on 2022-08-14 22:07  路过秋天  阅读(792)  评论(0编辑  收藏  举报
路过秋天