【IT168 技术文档】
测试驱动开发
测试驱动开发是敏捷开发的最重要的部分。该方法主要是先根据客户的需求编写测试程序,然后再编码使其通过测试。在敏捷开发实施中,开发人员主要从两个方面去理解测试驱动开发。
在测试的辅助下,快速实现客户需求的功能。通过编写测试用例,对客户需求的功能进行分解,并进行系统设计。我们发现从使用角度对代码的设计通常更符合后期开发的需求。可测试的要求,对代码的内聚性的提高和复用都非常有益。
在测试的保护下,不断重构代码,提高代码的重用性,从而提高软件产品的质量。
更多请参见文章“使用模拟对象(Mock Object)技术进行测试驱动开发”。
单元测试
单元测试测的是独立的一个工作单元。在 Java 应用程序中,“独立的一个工作单元”常常指的是一个方法(但并不总是如此)。作为对比,集成测试和验收测试则检查多个组件如何交互。一个工作单元是一项任务,它不依赖与其他任何任务的完成。
相关技术文章:
利用 Ant 和 JUnit 进行增量开发
怎样使用 JUnit 框架编写单元测试
AspectJ 和模仿对象的测试灵活性
使用模仿对象进行单元测试
安全抵达!:防御性编码和单元测试“交通规则”
用 Jython 构建 JUnit 测试包
用 Groovy 更迅速地对 Java 代码进行单元测试
Hibernate 配置文件在单元测试中的灵活运用
TestNG 使 Java 单元测试轻而易举
Eclipse 3.1 中使用TestNG:基于注释的单元测试框架
JUnit 4 抢先看
自动进行团队构建和单元测试过程
对方面进行单元测试
使用 ConTest 进行多线程单元测试
测试对象串行化
使用 TestNG 的新特性管理实际项目中的大量单元测试
单元测试利器 JUnit 4
利用 Eclipse 进行单元测试
对 Ajax 应用程序进行单元测试
使用 Grester 简化 Java 应用程序的 JUnit 测试
应用设计模式编写易于单元测试的代码
使用 JUnit 对规则进行单元测试
扩展 JUnit 测试并行程序
测试覆盖率
测试改进了代码质量,但这也只是针对实际测试到的那部分代码而言的。您需要有一个工具告诉您程序的哪些部分没有测试到,这样就可以针对这些部分编写测试代码并找出更多 Bug。
用 Cobertura 测量测试覆盖率
使用 EMMA 测量测试覆盖率
使用 EclEmma 进行覆盖测试