您的位置:首页 > 其它

使用单元测试工具TestDriven.NET调试程序

2009-01-12 10:23 477 查看
使用单元测试工具TestDriven.NET调试程序

也许我写这篇文章,你可以说你已经知道,那么请将这篇文章作为你的复习,请留言;

如果我写的这篇文章,你说对你有帮助,那么请留言;

如果我写得这篇文章,你说你有更好的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】 选项。

后序

也许我上面所给出来的几种方法难登大家法眼,我只是将自己的一些东西写出来给大家分享。为什么我会这么做?在我们项目过程中,一面要承受工程进度的压力,一面又要考虑到软件质量的问题,我们需要在这两者之间找到一个平衡,为此我们要寻找一种既保证质量,又不是很费时间的调试/测试方法来解决这个矛盾。

我上面所给出的几种调试方法都是相当简洁的调试方法,能够在较短时间内调试/测试所编写的方法,虽说并不完美,但是也相得益彰,通常是编写一个方法,马上就调试/测试所编写的方法,保证了方法的有效性和正确性。

我所列举出来的几种调试方法都是相当基础的方式,至于怎么去用还得靠自己,复杂的东西都是基础变过来的。

最重要的是我们要养成把质量放在第一位的思维模式,要养成调试/测试的良好习惯,保证软件的质量和项目的进度。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: