首页 > 其他分享 >vs2013添加单元测试

vs2013添加单元测试

时间:2022-09-29 10:01:27浏览次数:47  
标签:actual 单元测试 vs2013 value System Test 添加 expected using


vs2013添加单元测试

要运行 vs2013单元测试 ,那么打开VS2013选择 工具 (菜单)


-扩展和更新,搜索并安装Unit Test Generator


   


Install Unit Test Generator  如果不安装这货是不会出现Generate Unit Test的选项的,也就无法创建vs2013单元测试。 安装好插件后做个测试的例子如下: 



创建 vs2013单元测试 

一个控制台项目MyUnitTest。  

然后创建一个类:TestFunction.cs,

添加如下代码:  

using System.Linq; 
using System.Text;
using System.Threading.Tasks;
using MyUnitTest;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace MyUnitTest.Tests
{
[TestClass()]
public class TestFunctionTests
{
[TestMethod()]
public void ToIntTest()
{
TestFunction target = new TestFunction();
string value = "5";
int expected = 5;//预期的值
int actual;//实际的值
actual = target.ToInt(value);
Assert.AreEqual(expected, actual);
value = "5.5";
expected = 5;
actual = target.ToInt(value);
Assert.AreEqual(expected, actual);
}
}
}


 然后在该页面ToInt方法体内右键后选择Generate Unit Test,弹出后直接选择OK,会自动生成vs2013单元测试的测试项目。将代码进行如下修改:  using System;  using System.Collections.Generic; 

然后在ToIntTest方法上点右键选择运行测试,结果肯定引发了异常,这个异常是我们上面自己写的。如果去掉红框中的代码再运行,那么结果就是通过。 

这个测试框架用的是MsTest,喜欢用Nunit 的可以用nuget管理器下个nunit 包,然后该测试项目添加nunit的引用,右键选择添加测试里就可以选择nunit,上面的例子改成nunit后就是类似这样子

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MyUnitTest;
using NUnit.Framework;

namespace AppHelper.Tests
{


[TestFixture]
public class TalkServiceTests
{


/// <summary>
/// 全局setup,不能使用async
/// </summary>
[TestFixtureSetUp]
public void TestFixtureSetUp()
{

}

/// <summary>
/// 每次测试setup,不能使用async
/// </summary>
[SetUp]
public void SetUp()
{
}

[Test]
public async void ToIntTest()
{
TestFunction target = new TestFunction();
string value = "5";
int expected = 5;//预期的值
int actual;//实际的值
actual = target.ToInt(value);
Assert.AreEqual(expected, actual);
value = "5.5";
expected = 5;
actual = target.ToInt(value);
Assert.AreEqual(expected, actual);
}

}
}


要运行NUnit的测试,还需要安装“NUnit Test Adapter”这个扩展,具体就是从“工具”--“扩展与更新”联机里搜索到“NUnit Test Adapter” 然后下载安装,重启后,单元测试的方法上右键就可以运行测试了



标签:actual,单元测试,vs2013,value,System,Test,添加,expected,using
From: https://blog.51cto.com/u_15810749/5721731

相关文章

  • 【从零开始的Linux服务器管理】为服务器添加新用户
    任务背景这是一个非常常见的任务,当有新的用户要使用服务器,作为服务器管理员,都需要为服务器添加新用户,使新用户能够正常使用服务器的各项资源。需要完成的任务包含两项,一......
  • Visio添加三种UML2.5模板
    微软Visio开发团队2月23日的Blog中提到,Visio除了原有的UML模板外,新增了三种UML2.5模板,支持组件图、通信图和部署图。​​https://blogs.office.com/2017/02/23/visualize-w......
  • DML-添加数据
    DML-添加数据语法:insertinto表名(列名1,列名2,...列名n)values(值1,值2,...值n);注意:1.列名和值要一一对应。2.如果表名后,不定义列名,则默认给所有列添加值......
  • antdv 添加自定义svg图标
    1引入importIconfrom'@ant-design/icons-vue'2调用添加icon的方法Icon.add使用方式:<a-icontype="svg1"/>因为是添加到ant-design的,升级antdv出现异常时要查阅源码......
  • python添加模块路径的三种方法
    之前对macos系统自带的python进行了升级,结果发现新安装的python的site-packages目录并没有加到python的系统路径中,所以在使用其他库时发现出现了缺少模块的错误。查看pyt......
  • 494添加数据和495删除数据
    添加数据语法inserinto表名(列名1,列名2,...列名n...)VALUES(值1,值2,...值n); 注意列名和值要一一对应如果表明后,不定义列名,默认给所以列添加值INSERTINTO表......
  • Centos 7防火墙添加端口及管理命令(Centos 7 及以上版本)
    在Centoslinux6及以前的版本,操控防火墙用的命令是iptables,但在Centoslinux7及其以后的版本,操控防火墙的命令变化了,现在用firewall-cmd这个命令来操作防火墙了,现记录如......
  • MyBatis——案例——添加
    添加  1、编写接口方法:Mapper接口    参数:除了id之外的所有数据    结果:void/***添加*/voidadd(Brandbrand);  2、编写SQL语句:SQL映射文......
  • MySQL 如何添加索引
    MySQL如何添加索引https://blog.csdn.net/Yetao1996/article/details/124006405MySQL中四种方式给字段添加索引https://blog.csdn.net/weixin_47681855/article/detail......
  • Cocos Creator用jtest单元测试攻略极速版
    主要参考了CocosCreator中单元测试入门,但是该文代码在我电脑上并没有正常执行,所以修正后写了本文。毕竟,一篇攻略,最基本的要求应该是,可以成功运作。想要了解到底是为什么......