方便你的测试(TestDriven.NET)
2006-07-20 14:54
260 查看
测试驱动现在应该是比较普遍的概念了,我们一般都会用Nunit进行测试。但这样测试有两个不方便的地方,一是我们写好测试代码后要另开一个程序,也就是Nunit-gui.exe程序加载编译过后的测试代码,然后点击“Run”进行测试;二是我们即使在Nunit中测试通过了,也只是看到一个非常环保的绿条,知道我们的测试是通过了,但这并不能使我们在代码层上有更多了解,比如,你难道不想知道你的代码的使用率来改进你的程序?
针对以上两个问题,我首先向大家介绍TestDriven.NET。你可以到http://www.testdriven.net/default.aspx上查看它的详细信息,你也可以到http://www.testdriven.net/download.aspx下载它,好像只有个人版是能免费下载的。它能将Nunit集成到Visual Studio.NET开发环境中,它也能将NCover(接下来将介绍)和NCoverExplorer(下面也会介绍)。按照网上的说法它支持各种版本的Visual Studio.NET,所以你不必担心兼容性冲突。当你安装了TestDriven.NET后,你会在开发环境的菜单里看到这个集成,如下图(这里显示的就是已安装了NCover的):
Usage: NCover /c [/a ]
/c Command line to launch profiled application.
/a List of assemblies to profile. i.e. “MyAssembly1;MyAssembly2″
/v Enable verbose logging (show instrumented code)
当NCover分析完你的代码,它会产生两个文件:一个是 coverage.log ,另一个是 coverage.xml。log文件包含了NCover分析程序时的信息,xml文件很重要,包含了程序的分析信息。你还能在安装后的文件里看到一个Coverage.xsl文件,有了它你就能用浏览器看分析出来的xml文件而不必再自己做xsl转换了。
接下来我们使用NCover。下面是我输入的命令和NCover的输出:
C:\Program Files\NCover>NCOVER.CONSOLE “…\dev\VS2005\Test\DDG\CalcApp\CalcApp\bin\Debug\CalcApp.exe”
NCover.Console v1.5.4 - Code Coverage Analysis for .NET - http://ncover.org Copyright (c) 2004-2005 Peter Waldschmidt
Command: …\dev\VS2005\Test\DDG\Calc
App\CalcApp\bin\Debug\CalcApp.exe
Command Args:
Working Directory:
Assemblies:
Coverage Xml: Coverage.Xml
Coverage Log: Coverage.Log
Waiting for profiled application to connect…
******************* Program Output *******************
***************** End Program Output *****************
当你打了命令NCover.Console “……… .exe”后,程序会调用出这个exe程序,然后你就可以使用这个exe程序的功能,当你觉的可以了,就关闭这个exe程序,那么NCover就会输出“End Program Output”的字样,然后xml文件就产生了。这里我还要很遗憾的告诉你,NCover不支持Web,我试过,结果如下图:
程序分析完后的xml文件很大也很复杂,我们不可能去看这个文件。但你可以用IE来看,比较直观,如下图:
从这里你就可以看到结果了。
但是这样看还不是很理想,有个很好的工具可以帮助你,那就是 NCoverExplorer ,你可以从http://www.kiwidude.com/dotnet/NCoverExplorer.zip下载。下载解压后,你只要打开里面的NCoverExplorer.exe文件,然后加载进NCover分析产生的xml文件,你会看到非常令你满意的程序分析结果,比如下面的图:
每个类甚至每个类中方法的使用率都显示出来了,当你点击其中的方法,你还可以看到代码,它还用不同的颜色标识出了使用的代码。呵呵,真是个很好的工具。
介绍到这里也差不多结束了,这个也只是概要介绍,有时间的话再向大家介绍更详细的应用和其它一些好的工具。希望这些工具能给你带来大的帮助!
针对以上两个问题,我首先向大家介绍TestDriven.NET。你可以到http://www.testdriven.net/default.aspx上查看它的详细信息,你也可以到http://www.testdriven.net/download.aspx下载它,好像只有个人版是能免费下载的。它能将Nunit集成到Visual Studio.NET开发环境中,它也能将NCover(接下来将介绍)和NCoverExplorer(下面也会介绍)。按照网上的说法它支持各种版本的Visual Studio.NET,所以你不必担心兼容性冲突。当你安装了TestDriven.NET后,你会在开发环境的菜单里看到这个集成,如下图(这里显示的就是已安装了NCover的):
Usage: NCover /c [/a ]
/c Command line to launch profiled application.
/a List of assemblies to profile. i.e. “MyAssembly1;MyAssembly2″
/v Enable verbose logging (show instrumented code)
当NCover分析完你的代码,它会产生两个文件:一个是 coverage.log ,另一个是 coverage.xml。log文件包含了NCover分析程序时的信息,xml文件很重要,包含了程序的分析信息。你还能在安装后的文件里看到一个Coverage.xsl文件,有了它你就能用浏览器看分析出来的xml文件而不必再自己做xsl转换了。
接下来我们使用NCover。下面是我输入的命令和NCover的输出:
C:\Program Files\NCover>NCOVER.CONSOLE “…\dev\VS2005\Test\DDG\CalcApp\CalcApp\bin\Debug\CalcApp.exe”
NCover.Console v1.5.4 - Code Coverage Analysis for .NET - http://ncover.org Copyright (c) 2004-2005 Peter Waldschmidt
Command: …\dev\VS2005\Test\DDG\Calc
App\CalcApp\bin\Debug\CalcApp.exe
Command Args:
Working Directory:
Assemblies:
Coverage Xml: Coverage.Xml
Coverage Log: Coverage.Log
Waiting for profiled application to connect…
******************* Program Output *******************
***************** End Program Output *****************
当你打了命令NCover.Console “……… .exe”后,程序会调用出这个exe程序,然后你就可以使用这个exe程序的功能,当你觉的可以了,就关闭这个exe程序,那么NCover就会输出“End Program Output”的字样,然后xml文件就产生了。这里我还要很遗憾的告诉你,NCover不支持Web,我试过,结果如下图:
程序分析完后的xml文件很大也很复杂,我们不可能去看这个文件。但你可以用IE来看,比较直观,如下图:
从这里你就可以看到结果了。
但是这样看还不是很理想,有个很好的工具可以帮助你,那就是 NCoverExplorer ,你可以从http://www.kiwidude.com/dotnet/NCoverExplorer.zip下载。下载解压后,你只要打开里面的NCoverExplorer.exe文件,然后加载进NCover分析产生的xml文件,你会看到非常令你满意的程序分析结果,比如下面的图:
每个类甚至每个类中方法的使用率都显示出来了,当你点击其中的方法,你还可以看到代码,它还用不同的颜色标识出了使用的代码。呵呵,真是个很好的工具。
介绍到这里也差不多结束了,这个也只是概要介绍,有时间的话再向大家介绍更详细的应用和其它一些好的工具。希望这些工具能给你带来大的帮助!
相关文章推荐
- 方便你的测试(TestDriven.NET)
- 有人会用TestDriven.NET 进行测试吗?
- C# 利用VS2010结核TestDriven.Net工具进行代码测试
- 在ASP.NET MVC中使用测试驱动开发 Test Driven Development with ASP.Net MVC (Part 1)
- 使用 TestDriven.NET 实施『测试驱动开发』
- TestDriven.NET 2.0——单元测试的好助手
- 测试用例驱动测试- Test case driven testing
- 打造第二代测试框架TestDriven 2.0(五)—— 测试框架初步展示
- <Test-Driven Development with Python>学习笔记 第一部分 测试驱动开发基础
- 一、TestDriven.NET简单介绍
- 二、TestDriven.Net常用属性介绍及使用
- Test-Driven Development In .NET 部分译文
- VS2008下.NET 单元测试工具 TestDriven.NET 配置与集成方法
- TestDriven.NET 2.0——单元测试的好助手
- 利用TestDriven.net和NUnit进行单元测试
- TestDriven.Net VS插件介绍
- About TestDriven.NET
- TestDriven.NET 2.0——单元测试的好助手
- TestDriven.NET 2.0——单元测试的好助手
- 测试工具大全http://blog.csdn.net/vincetest/archive/2006/12/12/1440353.aspx