博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NUnit使用方法
阅读量:4332 次
发布时间:2019-06-06

本文共 1587 字,大约阅读时间需要 5 分钟。

单元测试是一个成熟项目必不可少的一个环节,NUnit很好的提供了测元测试的一些方法,以下是我得出的一点点经验以及NUnit的一点点实际应用中用到的内容。写的有点儿乱,不懂下面留言。谢谢~

准备NUnit
1. 下载NUnit 官网     下载msi即可
2. 点击安装。选择完整版
3. 是一个单元测试框架,专门针对.NET,
 
说明NUnit  
1. 标签(属性)Attribute
[TestFixture] 说明该class包含有测试
注:必须是Public,否则NUnit看不到
2[Test] 标记该方法是一个测试方法,或者说该方法是可以测试的。
public void TestName() 必须不能有参数。
3Assert(断言),是一个类,包含的方法有:
AreEqual,AreSame,Equals, Fail,Ignore,IsFalse,IsNotNull。
应用NUnit
1. 创建project 一般用ClassLibrary。
2. Add References:"nunit.framework.dll"
3. 创建一个类,以Arithmetic
4. SetUp/TearDown 属性
SetUp中一般都是写初始化数据(公共的)等
最常见:比如数据库连接(如果下面的用到数据库的话),定义一些常量
TearDown中一般写恢复数据等,例如在数据表中添加了一条数据,就需要在该方法中删除此数据(更新)
5. Ignore属性
由于一些原因(由于该测试方法运行后,引发下面的测试方法出错),需要暂时忽略该方法的运行,将其他的先执行
在方法上面添加[Ignore("Multiplication is ignored")]即可。执行后颜色是黄色
6. TestFixtureSetUp/TestFixtureTearDown
和SetUp和TearDown相似
不同之处:对于昂贵资源,例如数据库连接,一般都是关键资源。而且多次连接/关闭数据库会造成时间的浪费。
SetUp和TearDown是每个test方法执行时,都需要执行,而TestFixtureSetUp/TestFixtureTearDown是该类第一个test执行时
执行TestFixtureSetUp,最后一个执行完后,执行TestFixtureTearDown。
7. ExpectedException
这里是一个验证这个假设的测试.有的时候,我们知道某些操作会有异常出现,例如, 在实例中增加除法,某个操作被0除,
抛出的异常和.NET文档描述的一样 [ExpectedException(typeof(DivideByZeroException))]
8. Test Suite 测试套件 (其实是一个分组)
如果不是同一个class中的方法,不能有[TestFixture]
如:
9. Category 对测试方法进行分组;Ecplicit被选中时才能进行测试
说明UT的一些习惯
1. 被测试method如果有多个分支,尤其是带有switch,各种if..else,try...catch,应该写多个test去测试,而不是在一个测试中测试
2. 测试范围,比如一个方法是验证一个数字是否是1和10之间,则取样点应该是:0,1,10,11,中间随便,即临界值
断点调试
1.      NUnit自动启动,调试
右击Test project    →选择Properties    →Debug    →选择Start external program,然后选择自己的安装路径下的NUnit.exe.
2.      断点调试
Debug →Attach to Process,然后点击Attach即可

转载于:https://www.cnblogs.com/merlinhome/p/3458757.html

你可能感兴趣的文章
二次剩余及欧拉准则
查看>>
thymeleaf 自定义标签
查看>>
关于WordCount的作业
查看>>
UIView的layoutSubviews,initWithFrame,initWithCoder方法
查看>>
STM32+IAP方案 实现网络升级应用固件
查看>>
用74HC165读8个按键状态
查看>>
jpg转bmp(使用libjpeg)
查看>>
linear-gradient常用实现效果
查看>>
sql语言的一大类 DML 数据的操纵语言
查看>>
VMware黑屏解决方法
查看>>
JS中各种跳转解析
查看>>
JAVA 基础 / 第八课:面向对象 / JAVA类的方法与实例方法
查看>>
Ecust OJ
查看>>
P3384 【模板】树链剖分
查看>>
Thrift源码分析(二)-- 协议和编解码
查看>>
考勤系统之计算工作小时数
查看>>
4.1 分解条件式
查看>>
Equivalent Strings
查看>>
flume handler
查看>>
收藏其他博客园主写的代码,学习加自用。先表示感谢!!!
查看>>