系列目錄
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 微服務系列教程(部署教程)。