Asp.Net WebApi 調試利器“單元測試”


 

 

當我們編輯好一個WebApi應用程序后,需要對該Api接口進行調試,傳統的調試辦法是在方法內設置斷點,然后用PostMan等http工具模擬訪問進行查看WebAPI的運行情況,但這種除了效率較低還進行出現http的請求無法准確“命中”方法的難題。

下面,我給大家推薦的是---"單元測試"

如何進行單元測試呢?

首先,我們在解決方案中新建一個ASP.NET WebAPI應用程序。

如圖所示。

點擊確定后,選擇空  並勾選WebAPI

 

 然后添加一個Vaule控制器

該ValueController的代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
 
namespace TestDemo.Controllers
{
    public class ValueController : ApiController
    {
        [HttpGet]
        public int Get(int x, int y)
        {
            return x + y;
        }
    }
}

一個很簡單的API接口,接收兩個Int類型數據返回兩個數據之和。

我們當然知道,如果傳入的x=1,y=2,那么返回的結果肯定是3,那么我們如何對這一結論進行測試呢?

下面就來講講單元測試的用法。在解決方案中選擇新建項目  選擇測試 目錄下的單元測試。如圖:

 

 確認后,為了命名規范把第一個測試類命名成我們要測試的控制器的名稱+Test,如圖:

其次,需要填加對TestDemo也就是我么你要測試的那個項目的引用。選擇引用,添加引用,然后勾選我們要測試的項目。

然后回到HomeControllerTest中,填加測試方法,該測試方法的代碼如下:

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using TestDemo.Controllers;
 
namespace WebApi_Test
{
    [TestClass]
    public class ValueControllerTest
    {
        [TestMethod]
        public void TestMethod1()
        {
            var valueController = new ValueController();
            var result = valueController.Get(1, 2);
           Assert.AreEqual(3,result);
        }
    }
}

如果3和返回的結果相等,那么該測試就會通過,否側測試不通過,運行單元測試的方法如圖,

 

 即可查看測試是否通過。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM