junit5相关内容

有没有一种方法可以调用扩展Web驱动程序类的Java方法?

我正在使用WebDriverManager Java库。它提供了一个通用管理器,可以被参数化为特定的管理器(对于Chrome、Firefox等)。我将它与Selify WebDriver和JUnit5的@PARAMETIZED和@ValueSource注释一起使用,这样我就可以在多个浏览器上运行我的测试。 我按照WebDriverManager文档创建了一个实现: public class ..

在springboottest中从默认的applaton.yml设置测试容器属性的更好方法

我在springboottest中使用posgresql测试容器。由于我有多个测试涉及此测试容器,因此我使用了静态测试容器,它将为1个JUNIT类的所有测试调用一次,并在所有测试执行后关闭。 这是我在EachCallback之前使用参数解析程序实现的。 这种方法的问题是,在默认的应用程序.yml中配置的数据源元数据(如jdbc-url、db名称、主机、端口)不会直接在测试容器属性中使用 ..
发布时间:2022-06-13 10:55:41 其他开发

如何在setter上调用调用?

我要编写一个测试用例,该测试用例要求setter引发异常。 class ClassUnderTest { fun regularMethod(){ require(false)} var currentValue: Int = 0 set(_) { require(false) } } 对于常规函数,我可以简单地 ..
发布时间:2022-06-13 10:43:23 其他开发

如何在JUnit5的&BeForeEach";方法中打印要执行的";@测试方法的名称?

我知道我们可以使用@Rule和TestName在JUnit4中做到这一点,但是我使用的是JUnit5(Jupiter),我正在努力寻找一种方法来打印@BeforeEach方法中(要执行的)测试方法的名称。 推荐答案 在您的@BeforeEach方法中声明TestInfo参数。JUnit Jupiter将在运行时注入它的一个实例,其中包含与“当前执行的测试”相关的所有可用信息。 例 ..
发布时间:2022-06-13 10:21:11 其他开发

如何包装JUnit5测试

在JUnit4中,您可以使用规则来包装测试,以便可以在测试运行之前和之后执行代码。在大多数情况下,这可以通过@BEFORE和@AFTER方法或ExternalResource规则完成。但是,一些控制流构造(如Try-with-Resources)不能拆分成两个方法。在大多数情况下,除了这些构造之外,还有其他方法可以将它们拆分成两个方法。例如,使用Try-With-Resources,您可以手动获取 ..
发布时间:2022-06-13 09:50:02 其他开发

Junit5给出了扩展之间的依赖关系

我刚刚开始编写一些Junit5测试和扩展。 我很快就谈到了我认为是一个问题:我如何告诉Junit5ExtensionB需要ExtensionA在场? 例如,我有一个‘base’扩展ExtensionA,它启动一个数据库并执行一些初始化,这对一些测试来说已经足够了。 我还有ExtensionB,这需要ExtensionA完成的一些工作,主要是从存储中获取一些对象,然后解析一些参数。 ..
发布时间:2022-06-13 09:42:57 其他开发

如何在JUnit5中使用在其他类中定义的@MethodSource

有没有办法使用@MethodSource来使用其他类中定义的方法? 例如:下面的代码可以工作,因为stringProvider方法定义在同一个类中。 @ParameterizedTest @MethodSource("stringProvider") void methodSourceFromOtherClass(String word) { System.out.printl ..
发布时间:2022-06-13 09:30:50 其他开发

在JUnit5中为@参数化为测试生成显示名称

我有一堆从@MethodSource接收参数的@ParameterizedTest,toString()结果非常详细(例如Selify的WebDriver)。默认情况下,这些名称用于组成相应的显示名称。来自JUnit 5 user guide: 默认情况下,参数化测试调用的显示名称包含调用索引和该特定调用的所有参数的字符串表示形式。但是,您可以通过@ParameterizedTest注释[… ..
发布时间:2022-06-13 09:11:46 Java开发

无法解析junit平台启动器1.6.3 IntelliJ

我正在尝试在IntelliJ中运行测试,该测试以前在Spring Boot 2.2.x中运行。我最近升级到了春靴2.3.9。当我尝试从运行配置运行测试时,它没有运行测试并抛出错误: ‘无法解析junit Platform Launcher 1.6.3 IntelliJ’。 但是,如果我在CLI中运行测试,它工作正常。 推荐答案 原来,需要添加Junit5-Platform- ..
发布时间:2022-06-12 23:57:36 其他开发

Maven和JUnit5:在一个类中运行一个测试

我一直尝试使用Maven(版本3.3.9)和JUnit5(而不是4)在一个类中使用以下命令运行单个测试,但未成功: mvn -Dtest=EmitRulesTest#cr_filter_contact_points_for_C4C_output test 此命令执行所有测试。 尝试此命令实际上会执行类中的所有测试: mvn test -Dtest=EmitRulesTest ..
发布时间:2022-06-12 23:49:10 其他开发