cleo-凡事从积极的态度做起

学习,学习,学习 BI/biztalk/infopath/sharepoint,呵呵。 学习没有止境。。。

导航

软件单元测试(Unit Test )最佳实践

 

我们回顾几种单元测试的最佳实践。首先,TDD 是非常有价值的实践。在所有现有的开发方法中,TDD 可能是多年来根本上改进开发且投资成本最小的一种。每个 QA 工程师都会告诉您,开发人员在没有相应的测试前不会写出成功的软件。有了 TDD,实践是在实现前编写测试,并且理想情况是,编写的测试可以成为无需人工参与执行的构建脚本的一部分。需要训练来开始养成习惯,但一旦建立习惯后,不使用 TDD 方法编码就像开车时不系安全带一样。

对于测试本身,有一些额外的原则可以帮助成功进行测试:

避免测试产生依赖性,这样测试需要按照特定的顺序执行。每个测试都应该是自治的。

使用测试初始化代码验证测试清除已经成功执行,如果没有则在执行测试前重新执行清除。

在编写任何产品代码的实现前编写测试。

对于产品代码中的每个类创建一个测试类。这样可以简化测试的组织,并可以容易地选择在何处放置每个测试。

使用 Visual Studio 生成初始化的测试项目。这样可以大大减少手工设置测试项目并与产品项目关联的步骤。

避免创建其他依赖计算机的测试,例如依赖特定的目录路径的测试。

创建模拟对象 (mock object) 来测试接口。模拟对象通常在需要验证 API 符合所需功能的测试项目中实现。

在继续创建新的测试前验证所有测试运行成功。这样可以保证在破坏代码后立刻进行修正。

可以最大化无需人工参与执行的测试代码。在依赖于手工测试前,必须完全肯定无法采用合理的无需人工参与执行的测试方案。


以上内容转载自:http://www.microsoft.com/china/msdn/library/langtool/vsts/vstsunittesting.mspx?mfr=true

单元测试是我一直想推行的,但是当时没有找到非常合适的低成本的解决方案,所以一直不行。
现在有和VSTS集成的测试工具,真是不错,还是全自动的、可以进行代码覆盖的检查,不错。
要设置代码覆盖的检查就要编辑Test Run的配置:


这是查看代码覆盖的结果:

posted on 2006-04-06 18:49  无为而为-凡事从积极的态度做起  阅读(1887)  评论(0编辑  收藏  举报