您认为在项目中组织JUnit测试的最佳实践是什么,为什么?例如,您是否将测试放在他们测试的类(class)旁边?您是否将它们放在一个单独但并行的包结构中?您是否完全使用不同的组织策略? 最佳答案 出于几个原因,我使用单独但并行的包结构。它使测试的组织方式与应用程序代码相同。我可以轻松地构建应用程序文件以进行分发。测试代码仍然可以访问我的应用程序代码。它不像测试代码与应用程序代码混合那样困惑。 关于java-在项目中组织JUnit测试,我们在StackOverflow上找到一个类似的问题:
您认为在项目中组织JUnit测试的最佳实践是什么,为什么?例如,您是否将测试放在他们测试的类(class)旁边?您是否将它们放在一个单独但并行的包结构中?您是否完全使用不同的组织策略? 最佳答案 出于几个原因,我使用单独但并行的包结构。它使测试的组织方式与应用程序代码相同。我可以轻松地构建应用程序文件以进行分发。测试代码仍然可以访问我的应用程序代码。它不像测试代码与应用程序代码混合那样困惑。 关于java-在项目中组织JUnit测试,我们在StackOverflow上找到一个类似的问题:
在我的项目中,我必须在所有测试之前进行一些存储库设置。这是使用一些棘手的静态规则完成的。但是,在所有测试之后,我不知道如何进行清理。我不想保留一些神奇的静态数字来指代所有测试方法的数量,我应该一直保持这些数字。最受赞赏的方法是添加一些监听器,该监听器将在所有测试之后调用。JUnit4中是否已经有任何接口(interface)?编辑:这与@BeforeClass和@AfterClass无关,因为我必须知道是否最后一次调用了带有@AfterClass注释的方法。 最佳答案 我正在使用JUnit4.9。这会有帮助吗?:importjuni
在我的项目中,我必须在所有测试之前进行一些存储库设置。这是使用一些棘手的静态规则完成的。但是,在所有测试之后,我不知道如何进行清理。我不想保留一些神奇的静态数字来指代所有测试方法的数量,我应该一直保持这些数字。最受赞赏的方法是添加一些监听器,该监听器将在所有测试之后调用。JUnit4中是否已经有任何接口(interface)?编辑:这与@BeforeClass和@AfterClass无关,因为我必须知道是否最后一次调用了带有@AfterClass注释的方法。 最佳答案 我正在使用JUnit4.9。这会有帮助吗?:importjuni
我想在2两位小数之间使用断言,我使用这个:BigDecimalbd1=newBigDecimal(1000);BigDecimalbd2=newBigDecimal(1000);org.junit.Assert.assertSame(bd1,bd2);但JUnit日志显示:expectedwasnot: 最佳答案 officialjunitsolution断言两个BigDecimal在数学上相等是使用hamcrest。与java-hamcrest2.0.0.0我们可以使用这个语法://importstaticorg.hamcrest
我想在2两位小数之间使用断言,我使用这个:BigDecimalbd1=newBigDecimal(1000);BigDecimalbd2=newBigDecimal(1000);org.junit.Assert.assertSame(bd1,bd2);但JUnit日志显示:expectedwasnot: 最佳答案 officialjunitsolution断言两个BigDecimal在数学上相等是使用hamcrest。与java-hamcrest2.0.0.0我们可以使用这个语法://importstaticorg.hamcrest
Eclipse中的JUnitView似乎对测试进行随机排序。如何按类名排序? 最佳答案 正如加里在评论中所说:itwouldbeniceifUnitRunnercouldbetoldtogoaheadandorderthembyclassname.Hmm,maybeIshouldlookintothesourcecode...我确实看过,但没有提示对这些名称进行排序的功能。我建议对JUnit插件提出更改请求,但我不认为有很多人在使用这个东西,所以:DIY。如果你修改插件代码,我想看看解决方案。
Eclipse中的JUnitView似乎对测试进行随机排序。如何按类名排序? 最佳答案 正如加里在评论中所说:itwouldbeniceifUnitRunnercouldbetoldtogoaheadandorderthembyclassname.Hmm,maybeIshouldlookintothesourcecode...我确实看过,但没有提示对这些名称进行排序的功能。我建议对JUnit插件提出更改请求,但我不认为有很多人在使用这个东西,所以:DIY。如果你修改插件代码,我想看看解决方案。
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭2年前。Improvethisquestion在上周,我创建了两个类(class),我的团队对它们的表现表示了一些担忧。为了评估我的代码,我编写了一些简单的JUnit测试,这些测试通过构建丰富的测试数据集来运行这些类,然后通过相关方法为数千次迭代提供这些数据。我记录了每次迭代的运行时间,然后使用循环和System.nanoTime()记录了最高、最低和平均时间。最后,我让JUnit断言最高和平均时间在可接受的范围内。这种测试方法让我的
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭2年前。Improvethisquestion在上周,我创建了两个类(class),我的团队对它们的表现表示了一些担忧。为了评估我的代码,我编写了一些简单的JUnit测试,这些测试通过构建丰富的测试数据集来运行这些类,然后通过相关方法为数千次迭代提供这些数据。我记录了每次迭代的运行时间,然后使用循环和System.nanoTime()记录了最高、最低和平均时间。最后,我让JUnit断言最高和平均时间在可接受的范围内。这种测试方法让我的