利用单元测试,我们可以找出很多意想不到的问题,在Nunit对项目进行单元测试 过程中就查找出了很多隐藏的问题,下面是单元测试中遇到的问题与解决方案:
1.TQL_Part表
1.1问题1
下面是项目中的代码:































写测试用例如下:









































model层中的TQL_PArt的description下的代码段有问题
if (value != null && value.Length > 50)
throw new ArgumentOutOfRangeException("Invalid value for Description", value, value.ToString());
数据库中description的字段为Varchar(500),而这里只为50,现在更正为 if (value != null && value.Length > 500)
修正后,运行后的状态条为绿色。
1.2问题2
然后GetPaperPart()方法中加入如下代码,测试边界情况:


用以上代码测试边界条件时,状态条为红色。
























用YEng.Model.TQL_Part part = new WYEng.Model.TQL_Part();实例化一个对象以后,如果rdr里面没有任何行,part的值也不为null,所以修改代码如下:

































运行Nunit后,状态为绿色,其他的类似问题也进行了相应的修正。
我正在研究Nunit单元测试,有不当的地方希望大家能指正,谢谢。下一篇,我将会讲一下,如何利用Nunit测试异常