iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > ASP.NET >.NETCore单元测试的两种方法介绍
  • 691
分享到

.NETCore单元测试的两种方法介绍

2024-04-02 19:04:59 691人浏览 安东尼
摘要

应用程序测试的类型很多,包括集成测试,WEB 测试,负载测试等。在最底层的是单元测试,此测试可以测试单个软件组件或方法。单元测试一般只测试开发人员的代码,不应该测试基础结构普、问题,

应用程序测试的类型很多,包括集成测试,WEB 测试,负载测试等。在最底层的是单元测试,此测试可以测试单个软件组件或方法。单元测试一般只测试开发人员的代码,不应该测试基础结构普、问题,如数据库,文件系统或网络资源等。单元测试可以使用测试驱动开发(TDD)编写,也可以将它们添加到现有代码已确认其正确性。

在编写单元测试时,注意不要随意地在基础结构上引入依赖项。这些依赖项往往使测试更慢,更脆弱,因此应该将其保留用于继承测试。可以通过遵循显示依赖性原则,使用依赖注入从框架请求依赖关系,以此来避免应用程序代码中地这些隐藏依赖关系。

1.xUnit.net 单元测试

创建一个 .net core 类库项目,创建一个用于测试的方法:

public class UnitTest
    {
        public bool IsNum(string obj)
        {
            var i = 0;
            return int.TryParse(obj, out i);
        }
    }

然后添加 xUnit 测试项目:

创建测试成功和测试失败的方法:

public class UnitTest1
    {
        private UnitTest myTest;
        public UnitTest1()
        {
            myTest = new UnitTest();
        }
        [Fact]
        public void TestSuccess()
        {
            Assert.True(myTest.IsNum("1"));
        }

        [Fact]
        public void TestFail()
        {
            Assert.True(myTest.IsNum("q"));
        }
    }

[Fact] 特性将方法表示为单个测试。

在 VS 工具栏中选择 测试-- 运行 -- 所有测试,显示一个成功,一个失败:

也可以使用[Theory] 特性执行相同的代码,但具有不同输入参数的测试,使用[InlineData] 特性来指定这些输入的参数:

        [Theory]
        [InlineData("-1")]
        [InlineData("0")]
        public void Test(string str)
        {
            Assert.True(myTest.IsNum(str));
        }

2.MSTest 单元测试

xUnit 使跨平台的良好选择,在面向 windows 时,MSTest 是一个更好的选择,因为是官方提供的支持。

创建 MSTest 测试项目,同样添加测试成功和失败的方法,在方法上添加 [TestMethod] 特性,并在类上添加特性 [TestClass]:

    [TestClass]
    public class UnitTest1
    {
        private UnitTest myTest;
        public UnitTest1()
        {
            myTest = new UnitTest();
        }
        [TestMethod]
        public void TestSuccess()
        {
            Assert.IsTrue(myTest.IsNum("1"));
        }

        [TestMethod]
        public void TestFail()
        {
            Assert.IsTrue(myTest.IsNum("q"));
        }
    }

到此这篇关于.Net Core单元测试的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: .NETCore单元测试的两种方法介绍

本文链接: https://www.lsjlt.com/news/146062.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • .NETCore单元测试的两种方法介绍
    应用程序测试的类型很多,包括集成测试,Web 测试,负载测试等。在最底层的是单元测试,此测试可以测试单个软件组件或方法。单元测试一般只测试开发人员的代码,不应该测试基础结构普、问题,...
    99+
    2024-04-02
  • JunitMockito实现单元测试方法介绍
    目录一、前言二、JUnit 框架三、Mockito 框架3.1 使用 Mockito 创建 mock 对象3.2 使用 mock 对象实践单元测试3.3 使用 PowerMock m...
    99+
    2024-04-02
  • Java单元测试介绍
    文章目录 单元测试单元测试基本介绍单元测试快速入门单元测试常用注解 单元测试 单元测试基本介绍 单元测试: 单元测试就是针对最小的功能单元编写测试代码,Java程序最小的功能单元是...
    99+
    2023-08-31
    单元测试 java junit
  • 详解Python单元测试的两种写法
    目录一、前言二、实现1.doctest2.unittest一、前言 python的两个单元测试包分别是 doctest 和 unittest,这两个包的使用起来各有长处,适用于不同的...
    99+
    2024-04-02
  • python单元测试框架pytest介绍
    pytest是python语言中一款强大的单元测试框架,用来管理和组织测试用例,可应用在单元测试、自动化测试工作中。 unittest也是python语言中一款单元测试框架,但是功能...
    99+
    2024-04-02
  • 自动化测试Pytest单元测试框架的基本介绍
    目录一、Pytest概念二、Pytest特点三、Pytest安装安装pytest命令:查看pytest版本:安装生成测试结果的HTML报告pytest-html四、Pycharm配置...
    99+
    2024-04-02
  • SpringBoot单元测试框架Mockito介绍及使用
    目录1. 什么是mock测试2. Mockito简介3. 在SpringBoot单元测试中使用Mockito4. Mockito的限制5. 总结Mockito 是一种 Java mo...
    99+
    2023-01-04
    SpringBoot单元测试框架Mockito SpringBoot Mockito SpringBoot单元测试
  • pure-ftpd中的两种chroot方法介绍
    这篇文章主要介绍“pure-ftpd中的两种chroot方法介绍”,在日常操作中,相信很多人在pure-ftpd中的两种chroot方法介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”pure-ftpd中的...
    99+
    2023-06-16
  • django写单元测试的方法
       从网上找了很多django单元测试的案例,感觉不是很好用,于是自己写了一套测试方法,在测试环境我们只需要传uri 、请求方式、参数即可一键对所有接口进行...
    99+
    2024-04-02
  • SpringBoot+TestNG单元测试的实现方法
    这篇文章主要讲解了“SpringBoot+TestNG单元测试的实现方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SpringBoot+TestNG单元测试的实现方法”吧!目录背景接口测...
    99+
    2023-06-20
  • Pythonflask与fastapi性能测试方法介绍
    目录背景apache ab介绍测试计划测试代码测试结果结论背景 sy项目通过MQ接受业务系统的业务数据,通过运行开发者开发的python脚本执行业务系统与财务系统数据的一致性校验。 ...
    99+
    2022-12-09
    Python flask与fastapi Python flask与fastapi性能测试
  • 简单介绍一下Oracle创建Database Link的两种方式
    Oracle创建Database Link的两种方式是静态Database Link和动态Database Link。1. 静态Da...
    99+
    2023-09-22
    Oracle
  • .NET Core单元测试的方法有哪些
    这篇文章主要介绍“.NET Core单元测试的方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“.NET Core单元测试的方法有哪些”文章能帮助大家解决问题。应用程序测试...
    99+
    2023-06-30
  • 查看本机mac地址两种方法介绍
    方法一:使用命令提示符(Windows)1. 打开命令提示符。点击开始菜单,搜索并打开“命令提示符”。2. 输入以下命令并按下回车键...
    99+
    2023-09-05
    mac
  • C++ 函数单元测试的替代方法?
    除 google test 外,c++++ 单元测试还有其他现代且灵活的方法,包括:catch2:现代、轻量级的框架,易于使用和配置。doctest:无头文件依赖关系,直接包含即可使用。...
    99+
    2024-04-24
    c++ 单元测试 替代方法
  • imba框架的简单介绍和性能测试
    这篇文章主要讲解了“imba框架的简单介绍和性能测试”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“imba框架的简单介绍和性能测试”吧!imba 简单介绍i...
    99+
    2024-04-02
  • Net Core后端单元测试的实现方法
    这篇文章主要介绍了Net Core后端单元测试的实现方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 前言单元测试一直都是"好处大家都知道很多,但是因为种种原...
    99+
    2023-06-08
  • Go 函数单元测试的自动化方法
    在 go 中,可以通过以下方法自动化单元测试:使用 go test 命令,提供灵活的测试运行和管理选项。集成第三方测试框架,获得额外的功能和灵活性。利用持续集成工具,在每次代码更改时自动...
    99+
    2024-05-03
    自动化 单元测试 标准库
  • Redis的两种安装部署方式介绍
    本篇内容介绍了“Redis的两种安装部署方式介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、Linu...
    99+
    2024-04-02
  • Go 中异步函数的单元测试方法
    在 go 中,异步函数可以通过并发测试进行单元测试,以模拟并发执行并测试异步函数的行为。步骤如下:创建一个超时上下文。创建一个通道来接收结果。调用异步函数并将结果写入通道。从通道中读取结...
    99+
    2024-05-01
    go 单元测试 异步函数
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作