• 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和返回的结果相等,那么该测试就会通过,否侧测试不通过,运行单元测试的方法如图,

     即可查看测试是否通过。

     

  • 相关阅读:
    HTML screenX 事件属性
    CSS Display(显示) 与 Visibility(可见性)
    JavaScript手册 | JS Array 对象中的sort() 方法
    IntelliJ IDEA收费版本Ultimate的安装和破解
    ASP.NET Style 控件
    HTML area hreflang 属性
    Shell test 命令
    ftplib (Internet) – Python 中文开发手册
    Java 之 Collection 接口
    java 之 集合概述
  • 原文地址:https://www.cnblogs.com/Violety/p/10607704.html
Copyright © 2020-2023  润新知