72得票8回答
在JUnit中断言一个列表不为空

我想要断言一个列表在 JUnit 4 中不为空,当我搜索时,我发现了这篇文章:Checking that a List is not empty in Hamcrest,它使用了 Hamcrest。assertThat(result.isEmpty(), is(false)); 导致我出现这个...

71得票10回答
IntelliJ IDEA看不到Lombok生成的代码。

我有一个使用lombok的基于Gradle的项目。我将此项目导入IntelliJ IDEA 14.1(使用“导入外部模型”导入方法)。我可以在Gradle中运行JUnit4单元测试,但是IntelliJ似乎无法看到Lombok生成的Getter方法,这阻止了我在IDEA中运行测试。 为了确保...

71得票6回答
setUp/tearDown (@Before/@After) 在 JUnit 中的作用是什么?

我相信我们都知道 setUp (@Before) 方法在测试方法之前执行,而 tearDown(@After) 方法则在测试方法执行后执行。 此外,我们也知道Junit会为每个测试方法创建一个Test实例。 我的问题是,我们能否将 setUp 方法的内容移到类构造函数中并删除 setUp ...

69得票8回答
在一个参数化类(junit)中创建多个参数集合。

目前,我必须为每个要测试的方法创建一个带参数的测试类,并使用多个不同的输入进行测试。有没有办法将这些内容合并到一个文件中? 现在有一个名为CalculatorTestAdd.java的文件,其中包含一组参数,用于检查Add()函数是否正常工作。是否有可能将这个参数集“连接”到Add()函数,...

67得票7回答
如何为SpringJUnit4ClassRunner配置log4j.properties?

在进行 JUnit 测试时,突然出现了这种情况。之前一切正常,我写了一些新的测试,然后出现了这个错误。如果我回滚代码,问题仍然存在。为什么会这样呢?log4j:WARN No appenders could be found for logger (org.springframework.te...

64得票7回答
为多个接口实现编写单元测试

我有一个接口List,它的实现包括单向链表、双向链表、循环等。我为单向链表编写了单元测试,这些测试对于大多数双向链表、循环以及接口的任何新实现都适用。因此,为了避免为每个实现重复编写单元测试,JUnit提供了内置模块,让我只需编写一个JUnit测试,就可以针对不同的实现运行它吗? 使用JUn...

62得票21回答
将Junit4测试迁移到androidx:导致“delegate runner could not be loaded”的原因是什么?

我正在将应用程序迁移到AndroidX,但是我的单元测试似乎无法正常工作。我参考了谷歌的AndroidJunitRunnerSample示例,该示例已更新为使用新的AndroidX API。但在运行测试时,我收到以下错误:java.lang.Exception: Delegate runner...

62得票5回答
JUnit Theories和Parameterized Tests的区别

理论测试和参数化测试之间的区别是什么? 我不关心在创建测试类时实现差异,只关心你何时会选择其中一种。

60得票7回答
在junit4中即使一个assert失败也要继续执行测试

我已经使用Jfunc构建了现有的框架,它提供了即使在测试用例中的某个assert失败时也可以继续执行的功能。Jfunc使用junit 3.x框架。但是现在我们正在迁移到junit4,所以我不能再使用Jfunc了,已经用junit 4.10 jar替换了它。 现在的问题是,由于我们在框架中广泛使...

60得票2回答
JUnit断言:浮点数之间的断言

我需要比较两个值:一个是字符串,另一个是浮点数。因此,我将字符串转换为浮点数,然后尝试调用assertEquals(val1,val2)方法进行比较,但这是不允许的。我猜测assertEquals不接受浮点数作为参数。 在这种情况下,我的解决方案是什么?