对还没有实现的测试代码抛出一个异常
这种做法可以防止测试通过并且提醒自己必须实现这部分代码.
如: @Test
public void testMethod(){
throw new RuntimeException("implements me");
}
一次只能单元测试一个对象
单元测试的一个至关重要的方面就是细粒度.一个单元测试独立的检查你创建的每一个对象,这样你就可以在问题发生的第一时间把它们隔离起来.如果被测试的对象多于一个,那么一旦这些对象发生了变化,你就无法预测它们将如何相互影响.当一个对象与其他复杂的对象交互时,你就可以使用可预测的测试对象将被测试的对象包围起来.
选择有意义的测试方法名字
一条好建议是测试方法的名字采用testXXX的命名模式,其中XXX是待测试领域方法的名字.当你需要为同一个方法添加其他测试时,则可以采用testXXXYYY的命名模式,其中YYY表示了测试之间的不同
在assert调用中解析失败原因
无论何时,只要你使用了JUnit的任何assertXXX方法,就要确保自己使用第一个参数为String类型的那个签名(如:assertNotNull("Must not return a null result",result)).这个参数让你可以提供一个用意义的文本描述,在断言失败时,JUnit的test
runner就会显示这个描述.如果不使用这个参数,当测试失败时,要找出失败原因就会比较麻烦和困难了
一个单元测试等于一个@Test方法
为了获得最好的结果,你的测试方法应当尽量的简单明了和目的明确,不要试图把多个测试塞进一个方法.这样导致的结果就是测试方法变得更加复杂,难以阅读也难以理解,所谓理解万岁嘛.^_^,而且你在测试方法中编写的逻辑越多,测试失败的可能性就越高,甚至需要调试才能解决问题.这就会陷入一个滑坡,使得你很可能会堕入不得不为你的测试代码编写测试的深渊
始终使assert得到调用
当你测试的代码没有包含任何assert语句,执行测试时,JUnit会将它们标记为测试成功,但这只是一个自欺欺人的假象.记得要始终调用assert,唯一可以接受不实用assert调用的情况是当抛出一个异常来指出一个错误条件时.
迫使错误条件发生是测试灾难恢复能力的极佳做法
测试任何可能失败的事物
如果一个方法被改变了,变得不再简单,那么当发生这个改变时,你就应当为这个方法添加一个测试,但在改变之前方法简单得不会出错则不需要增加.
未完,待续...
分享到:
相关推荐
原文地址:https://dev-cheats.com/java/unit-testing-best-practices-junit-reference-guide.html 这个资源是把文章整理成PDF,方便本地查看。
《软件测试与Junit实践》一书主要针对的是软件开发中的一个重要环节——测试,特别是针对Java编程语言的单元测试工具...通过阅读书中包含的pdg文件,读者可以深入了解各种测试技巧和最佳实践,提高自己的测试技能。
Junit的实施涉及到多个方面,包括测试概念、JUnit框架的使用、最佳实践以及与集成开发环境(IDE)的集成。 测试的概念是软件开发中的关键环节,它旨在发现和修复错误,确保软件的质量。白盒测试,也称为结构测试,...
#### 六、JUnit最佳实践 **测试驱动开发(TDD)**:TDD是一种开发方法论,强调在编写功能代码之前先编写测试代码。 - **编写测试**:首先编写失败的测试案例。 - **编写代码**:然后编写能够通过测试的代码。 - **...
JUnit 最佳实践包括: - **编写独立的测试**:每个测试用例应独立于其他测试,避免相互影响。 - **测试覆盖率**:确保测试覆盖了代码的各个分支和边界条件。 - **快速反馈**:测试应迅速执行,以便在开发过程中频繁...
本篇文章将详细阐述 JUnit 使用的最佳实践,帮助开发者更好地理解和应用 JUnit。 首先,理解 JUnit 的基本使用规范至关重要。每个测试方法都需使用 `@Test` 注解进行标记,且方法必须是 public void 类型,不接受...
五、最佳实践 1. 单元测试原则:保持测试用例独立,避免依赖外部环境;每个测试用例应快速执行,便于频繁运行。 2. 测试驱动开发(TDD):先写测试用例,再编写实现代码,以测试驱动开发流程,有助于提升代码质量。 ...
在软件开发过程中,测试是确保产品质量的关键环节。Java测试领域中,JUnit是一个广泛使用的单元测试框架,它使得开发者能够编写可重复执行、...在实际项目中结合最佳实践,如TDD,可以进一步提升团队的整体开发水平。
### JUnit最佳实践详解 #### 一、单元测试单一对象 **知识点概述:** 单元测试的一个核心原则就是针对单个对象进行测试。这意味着每个测试用例都应该独立地检验程序中的一个对象或组件的行为,以便在出现问题时...
最后,《软件测试与Junit实践_0.zip》可能是一份关于软件测试实践的文档,可能包含Junit在实际项目中的应用案例和最佳实践。 总的来说,这两本书是学习和提升Java单元测试技能的宝贵资源,无论是初学者还是经验丰富...
本书详尽地探讨了如何有效地使用JUnit进行软件测试,包括基础概念、高级特性和最佳实践,旨在帮助读者提升软件质量,降低维护成本,以及通过自动化测试提升开发效率。 在书中,作者首先介绍了JUnit的基本概念,包括...
在"junit测试.txt"这个文件中,可能包含了关于如何使用JUnit进行测试的详细步骤、示例代码和最佳实践。例如,文件可能会讲解如何设置一个基本的JUnit测试类,通常这个类会继承自`junit.framework.TestCase`(对于较...
JUnit最佳实践包括构建健壮、可迁移和多线程的测试用例。为了确保测试的稳定性和可靠性,开发者应该遵循以下原则: 1. 使用断言(Assertions)来验证代码的行为。 2. 尽量使测试用例独立,不依赖于外部环境或测试...
JUnit是Java编程语言中最常用的单元测试框架之一,它允许开发者编写可执行的测试用例来验证代码的功能。这里我们关注的是`junit-4.12.jar`版本...同时,了解不同版本之间的差异也有助于理解JUnit的发展历程和最佳实践。
为了更好地利用JUnit4进行单元测试,我们需要遵循一些最佳实践,如编写独立的测试用例,避免过度复杂的测试,以及充分覆盖代码的各种边界情况。同时,良好的测试覆盖率可以帮助我们发现潜在的代码问题,提高软件质量...
六、最佳实践 1. 测试驱动开发(TDD):先编写测试,再编写生产代码,使代码质量更高。 2. 单元测试的独立性:每个测试方法应独立运行,不受其他测试影响。 3. 充分覆盖:确保测试用例覆盖所有可能的代码路径和边界...
本段所提及的《JUnit实战第二版》是一本深入讲解JUnit框架的书籍,旨在帮助读者掌握JUnit的各种特性和最佳实践。书籍的结构分为多个章节,其中第一章节和第二章节分别介绍了JUnit的基本使用和深入探索。 在第一章...