使用单元测试工具TestDriven.NET调试程序
2009-01-12 10:23
477 查看
使用单元测试工具TestDriven.NET调试程序
也许我写这篇文章,你可以说你已经知道,那么请将这篇文章作为你的复习,请留言;
如果我写的这篇文章,你说对你有帮助,那么请留言;
如果我写得这篇文章,你说你有更好的idea,那么请留言。
1. 在编写一些不太好调试的程序时,如WebService 和一些后台运行的程序时,如何调试?
2. 在某些架构中存在一些底层框架,这些框架如何来调试?
3. 当我们编写一个方法或者一些存在互相引用的方法,如何从上到下进行一次调试?
4. 当编写出来一个方法后,难道现在你还在使用如下步骤调试?编译、F9断点、运行、调试?难道你不觉得好费时间啊。。。?或者你觉得为了一个方法不值,将一堆方法一起来调试/测试,这样难道不会遗漏一些方法也就是会遗漏一些BUG?
5. 如果我们要使用单元测试工具来测试一些底层的东西,通常正常的流程是编写一个单元测试模块[Test],然后利用单元测试工具执行来测试。但是这也是单元测试的一个弊端,太费时间。。。
。。。。。。
第二:这里我不跟大家将单元测试理论,也不讲如何使用单元测试工具TestDriven.NET进行单元测试。
这篇文章的核心是调试,好了,废话不多说,开始吧。
安装完TestDriven.NET后,在NET工程中,代码.cs 文件中弹出的右键菜单,将会多出三个选项,例如下图:
Code
public int CountAAddB(int a, int b)
{
return a + b;
}
public int CountAMultiplyB(int a, int b)
{
return a * b;
}
public void Count()
{
int i = CountAAddB(1, 2);
int j = CountAMultiplyB(3, 4);
int ij = i + j;
}
Count 方法应用了两个方法:CountAAddB和CountAMultiplyB,通常我们调试Count方法,也就完成了对CountAAddB和CountAMultiplyB的调试。
第一种,将该类的含参的构造函数注释掉或者添加一个无参的构造函数。
第二种,采用内接调试方法实例化包含参数的类,然后调试。
![](http://images.cnblogs.com/cnblogs_com/stan0714/使用单元测试工具TestDriven.NET调试程序-8.JPG)
在上图中,可以看到有两种,一种是直接点击工具栏中的停止按钮,第二种就是【工具】->【About Test Run】 选项。
我上面所给出的几种调试方法都是相当简洁的调试方法,能够在较短时间内调试/测试所编写的方法,虽说并不完美,但是也相得益彰,通常是编写一个方法,马上就调试/测试所编写的方法,保证了方法的有效性和正确性。
我所列举出来的几种调试方法都是相当基础的方式,至于怎么去用还得靠自己,复杂的东西都是基础变过来的。
最重要的是我们要养成把质量放在第一位的思维模式,要养成调试/测试的良好习惯,保证软件的质量和项目的进度。
也许我写这篇文章,你可以说你已经知道,那么请将这篇文章作为你的复习,请留言;
如果我写的这篇文章,你说对你有帮助,那么请留言;
如果我写得这篇文章,你说你有更好的idea,那么请留言。
引言
在实际的项目中,我们会遇到如下的问题:1. 在编写一些不太好调试的程序时,如WebService 和一些后台运行的程序时,如何调试?
2. 在某些架构中存在一些底层框架,这些框架如何来调试?
3. 当我们编写一个方法或者一些存在互相引用的方法,如何从上到下进行一次调试?
4. 当编写出来一个方法后,难道现在你还在使用如下步骤调试?编译、F9断点、运行、调试?难道你不觉得好费时间啊。。。?或者你觉得为了一个方法不值,将一堆方法一起来调试/测试,这样难道不会遗漏一些方法也就是会遗漏一些BUG?
5. 如果我们要使用单元测试工具来测试一些底层的东西,通常正常的流程是编写一个单元测试模块[Test],然后利用单元测试工具执行来测试。但是这也是单元测试的一个弊端,太费时间。。。
。。。。。。
基础
第一:既然我们这篇文章使用的单元测试工具是TestDriven.NET,那么总的先下载一个安装吧,下载地址:http://www.testdriven.net/download.aspx。第二:这里我不跟大家将单元测试理论,也不讲如何使用单元测试工具TestDriven.NET进行单元测试。
这篇文章的核心是调试,好了,废话不多说,开始吧。
安装完TestDriven.NET后,在NET工程中,代码.cs 文件中弹出的右键菜单,将会多出三个选项,例如下图:
Code
public int CountAAddB(int a, int b)
{
return a + b;
}
public int CountAMultiplyB(int a, int b)
{
return a * b;
}
public void Count()
{
int i = CountAAddB(1, 2);
int j = CountAMultiplyB(3, 4);
int ij = i + j;
}
Count 方法应用了两个方法:CountAAddB和CountAMultiplyB,通常我们调试Count方法,也就完成了对CountAAddB和CountAMultiplyB的调试。
调试FAQ
当调试包含参数的构造函数类时,为什么调试不了?
的确,当调试一个类,该类包含参数构造函数但是不包含无参数构造函数时,断点是进不去的,因为该类的默认参数没有赋值和初始化,如何解决这个问题,有两种方法。第一种,将该类的含参的构造函数注释掉或者添加一个无参的构造函数。
第二种,采用内接调试方法实例化包含参数的类,然后调试。
几种停止调试的方法
在上图中,可以看到有两种,一种是直接点击工具栏中的停止按钮,第二种就是【工具】->【About Test Run】 选项。
后序
也许我上面所给出来的几种方法难登大家法眼,我只是将自己的一些东西写出来给大家分享。为什么我会这么做?在我们项目过程中,一面要承受工程进度的压力,一面又要考虑到软件质量的问题,我们需要在这两者之间找到一个平衡,为此我们要寻找一种既保证质量,又不是很费时间的调试/测试方法来解决这个矛盾。我上面所给出的几种调试方法都是相当简洁的调试方法,能够在较短时间内调试/测试所编写的方法,虽说并不完美,但是也相得益彰,通常是编写一个方法,马上就调试/测试所编写的方法,保证了方法的有效性和正确性。
我所列举出来的几种调试方法都是相当基础的方式,至于怎么去用还得靠自己,复杂的东西都是基础变过来的。
最重要的是我们要养成把质量放在第一位的思维模式,要养成调试/测试的良好习惯,保证软件的质量和项目的进度。
相关文章推荐
- 使用单元测试工具TestDriven.NET调试程序
- 使用单元测试工具TestDriven.NET调试程序
- 推荐一个不错的VS.NET集成单元测试工具TestDriven.NET
- .Net单元测试工具TestDriven.NET
- VS.Net下的新的单元测试工具-TestDriven.NET
- TestDriven.NET单元测试工具(转载)
- 转 推荐一个不错的VS.NET集成单元测试工具TestDriven.NET
- 使用TestDriven.Net做单元测试
- 推荐一个不错的VS.NET集成单元测试工具TestDriven.NET
- 可以内置到.NET环境中的单元测试工具TestDriven.NET
- VS2008下.NET 单元测试工具 TestDriven.NET 配置与集成方法
- TestDriven.NET单元测试工具
- TestDriven.NET 2.0——单元测试的好助手 - TerryLee's Tech Space - 博客园
- Windows程序调试----第二部分 调试工具----第7章 使用Visual C++调试器调试
- iOS开发 简述使用OCUnit对程序进行单元测试(UnitTest)
- 使用IdleTest进行TDD单元测试驱动开发演练(3) 之 ASP.NET MVC
- TestDriven.NET 2.0——单元测试的好助手
- windows下使用MinGW的调试工具gdb.exe调试C程序
- C# 利用VS2010结核TestDriven.Net工具进行代码测试
- TestDriven.Net常用属性介绍及使用