单元测试遇到的问题和解决办法
来源:互联网 发布:软件数据库设计说明书 编辑:程序博客网 时间:2024/05/22 18:22
利用单元测试,我们可以找出很多意想不到的问题,在Nunit对项目进行单元测试 过程中就查找出了很多隐藏的问题,下面是单元测试中遇到的问题与解决方案:
1.TQL_Part表
1.1问题1
下面是项目中的代码:
/**////
/// 根据taskid,获得对应的Part记录
///
///
///
public WYEng.Model.TQL_Part GetPaperPart(int taskId)
...{
SqlParameter[] parm = new SqlParameter[1];
parm[0] = new SqlParameter(PARM_TASKID, SqlDbType.Int);
parm[0].Value = taskId;
WYEng.Model.TQL_Part part = new WYEng.Model.TQL_Part();
using (SqlDataReader rdr = XPWY.DBUtility.DBHelperSQL.ExecuteReader(SQL_SELECT_PART, parm))
...{
while (rdr.Read())
...{
part.PartCode = rdr.GetString(0);
part.SetCode = rdr.GetString(1);
part.SubjectId = rdr.GetInt32(2);
part.DisplayOrder = rdr.GetInt32(3);
part.Description = rdr.GetString(4);
}
}
return part;
}
写测试用例如下:
using System;
using System.Collections.Generic;
using System.Text;
using NUnit.Framework;
using WYEng.SQLServerDAL;
namespace WYEng.TestUnit
...{
[TestFixture]
public class TQL_Part
...{
SQLServerDAL.TQL_Part part;
WYEng.Model.TQL_Part p;
[SetUp]
public void CreateObject()
...{
part = new WYEng.SQLServerDAL.TQL_Part();
p=new WYEng.Model.TQL_Part();
}
[TearDown]
public void DeleteObject()
...{
part = null;
p=null;
}
[Test]
public void GetPaperPart()
...{
//输入TaskId的值,然后可以获取其Part所有信息
p = part.GetPaperPart(1); //正常情况
Assert.AreEqual(p.PartCode, "6666");
}
}
}运行Nunit,状态条为红色,经检查发现原因是
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 > 50)
修正后,运行后的状态条为绿色。
- 单元测试遇到的问题和解决办法
- Android单元测试遇到的问题
- android单元测试遇到的问题
- Android单元测试遇到的问题
- maven项目的单元测试和遇到的问题
- 工作遇到的问题和解决办法1
- 工作遇到的问题和解决办法2
- 工作遇到的问题和解决办法3
- 工作遇到的问题和解决办法4
- 工作遇到的问题和解决办法5
- 工作遇到的问题和解决办法6
- linux遇到的问题和解决办法
- tpcw遇到的问题和解决办法
- 最近遇到的问题和解决办法
- Hive+mySql遇到的问题和解决办法
- AS400遇到的一些问题和解决办法
- 安装cocoapods遇到的问题和解决办法
- 单元测试的遇到的问题以及收获
- 对创业板的三大希望
- Run-Time Check Failure #0
- 终于有了MSDN上的Blog
- 使用junit进行并发测试
- 5.12,让我们献出爱心
- 单元测试遇到的问题和解决办法
- 在单元测试中对异常的处理
- 第一篇日记哈
- 单元测试技术篇
- junit4功能介绍
- 杭州富家子飙车撞死路人
- 周四客户关系软件怎么让‘自动化销售机器’正常运作
- 北航课程 软件测试工具与实践8: IBM Rational PurifyPlus
- 数据库移植