利用Nunit进行单元测试

发表于:2009-3-18 14:39

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:ailing    来源:Taobao QA Team

  在做事务的过程中,接触了单元测试,利用Nunit对自己写的方法进行单元测试,可以提高自己提交的代码的质量。在这次实践的过程中让我感受到了单元测试的重要性,由于接触单元测试的时间还很短,了解的东西还是很肤浅,先进行总结,以后继续加深理解并应用。

  1. 首先,在编写测试类之前,必须为项目添加指向nunit.framework.dll的引用,否则无法找到命名空间。步骤为:在资源浏览器中右击引用,然后选择添加引用NUnit.framework组件,在添加引用对话框中按选择和确认按钮。接着创建一个测试类,并在测试类中写测试函数。测试类前面加上 [TestFixture],测试函数前面加上[Test],只有用这两个记号标记的类和方法才能显示在NUnit的任务列表中。NUnit提供了一组丰富的断言,这些断言作为Assert类的静态方法,也可以调用自己要测试的函数,如:

  Assert.AreEqual(”宝贝id不能为空”, auctionMan.modifyTimeByAuctionId(null, DateTime.Parse(”2009-2-11 10:37:05″)));

  Assert.AreEqual(”宝贝id不能为空”, auctionMan.modifyTimeByAuctionId(”", DateTime.Parse(”2009-2-11 10:37:05″)));

  Assert.AreEqual(”宝贝id不是位”, auctionMan.modifyTimeByAuctionId(”d56d46d654d6″, DateTime.Parse(”2009-2-11 10:37:05″)));

  auctionMan.modifyTimeByAuctionId(”f6f469edf3663eba41ca9bb60a9476″, DateTime.Parse(”2009-2-11 10:37:05″));

  auctionMan.modifyTimeByAuctionId(”88ee0cbc1db1390c0f35e1a549a76862″,”");

  auctionMan.modifyTimeByAuctionId(”88ee0cbc1db1390c0f35e1a549a76862″, “2009-1-10 16:37:05″);

  2.其次启动外部调试工具为Nunit,然后启动调试,点击运行后,如图所示:

  

  3.单元测试出问题后,要进行调试,排除bug。我们在测试函数中调用待测试的函数,有些是测试正常流的,有些是测试异常流的,正常流的测试应该是运行通过的,异常流的测试是抛异常的。但是如果正常流抛出异常,就应该进行定位,找出是代码哪里出错,这时可以设置断点进行跟踪,当运行到断点后,进行逐条代码的运行,可以找出运行到哪一行代码,Nunit会报错,同时可以把鼠标放在变量上方,查看程序运行时,变量内存的值,从而跟踪程序运行是否正确,如图:

  

  

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号