问题标签 [junit-jupiter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
232 浏览

python - 将 googleanalytics 和 google2pandas 安装到 anaconda 环境时出现问题

我无法将包 googleanalytics 和 google2pandas 下载到 anaconda 环境

我试过了conda install package

要搜索可能提供您正在寻找的 conda 包的替代频道,请导航至

并使用页面顶部的搜索栏。

我希望至少安装其中一个软件包

0 投票
1 回答
3172 浏览

java - 测试在 JUnit 4 下运行,但不是在 JUnit 5 下运行——编译干净,但执行了 0 个测试

任何人都可以在几分钟内轻松重现此问题。

基础 Mavenquickstart项目

maven-archetype-quickstart借助 IntelliJ 2018.3 和 Maven 3.6.0,我使用 Maven 原型版本 1.4创建了一个全新的项目。

在此处输入图像描述

爪哇 11

在新项目的 POM 文件中,我将属性从 1.7 更改为11 maven.compiler.sourcemaven.compiler.target用于我当前使用的 Java 11.0.2,来自Azul Systems的Zulu

在 IntelliJ 的 Maven 面板上,我运行cleaninstallLifecycle 事件。

在此处输入图像描述

在 JUnit 4 中运行测试

作为 的一部分install,运行测试。这个quickstart原型带有一个断言true.

在此处输入图像描述

结果出现在RunIntelliJ 的面板中。

[信息] 运行 work.basil.example.AppTest

[信息] 测试运行:1,失败:0,错误:0,跳过:0,经过时间:0.026 秒 - 在 work.basil.example.AppTest

所以我知道执行的测试。

JUnit 5,而不是 4

这一切都很好。现在让我们升级到 JUnit 5,看看问题所在。

在 POM 中,我更改了 JUnit 依赖项:

……对此:

木星进口(无年份测试)

编译器抱怨我的AppTest.java文件。所以我改变了import那里的陈述来使用这些jupiter包。我只想在我的新 greedfield 项目中运行 JUnit 5 测试,而不需要老式的 JUnit 4 测试。所以进口从这个改变:

……对此:

然后我执行Maven> Lifecycle> clean& install

……瞧,问题是:我们的测试没有执行。Run在IntelliJ 面板中看到的报告:

[信息] 运行 work.basil.example.AppTest

[INFO] 测试运行:0,失败:0,错误:0,跳过:0,经过时间:0.003 秒 - 在 work.basil.example.AppTest

➥ 为什么 JUnit 5 无法运行 JUnit 4 愉快运行的测试?

更新surefire插件

我怀疑需要更新Maven Surefire 插件。所以在POM中我改变了这个:

……对此:

另一个clean& install。但没有更好的,仍然运行 0 个测试。

[信息] 运行 work.basil.example.AppTest

[信息] 测试运行:0,失败:0,错误:0,跳过:0,经过时间:0.004 秒 - 在 work.basil.example.AppTest

整个 POM

这是我的整个 POM 文件。

JUnit 库

执行 Maven clean&后install,会出现两个 JUnit 库:junit-jupiter-apijunit-platform-commons.

在此处输入图像描述

JUnit 5 的其他版本

我在我的junit-jupiter-api依赖项中尝试了以下版本:

  • 5.0.0-M1
  • 5.1.1
  • 5.3.0
  • 5.3.2
  • 5.4.0-M1

每次尝试时,我都会运行一个 Maven clean& install。没有更好的。这些版本中的每一个都报告了Tests run: 0

不要责怪maven-archetype-quickstart

实际上,我在使用完全不同的 Maven 原型的一个完全不同的项目中发现了这个问题。

为了确定这个错误的 JUnit 5 行为,我尝试了一个新的项目,使用非常简单的maven-archetype-quickstart. 我发现了同样的行为:一切都可以编译,测试工具正在运行,但在 JUnit 5 下没有执行任何测试。

0 投票
1 回答
646 浏览

junit - 在 JUnit 5 中使用枚举值作为标记

我喜欢@TagJUnit 5 中的新功能,如手册中所示

我有一个担心。标签值只是字符串。这意味着可能会出现拼写错误。

➥ 有没有办法获取标签行为,但使用我定义的枚举中的值?

或者我可以依靠编译器来强制执行有效值的其他方式?

0 投票
1 回答
6506 浏览

kotlin - Kotlin MockK:io.mockk.MockKException:找不到答案

这是我的代码片段:

我正在使用 JUnit5(木星)。我得到的例外是:

io.mockk.MockKException: no answer found for: ServerRequest(#1).cookies()

这很奇怪,因为如果我理解relaxed正确,我的 ServerRequest 实例应该总是有一些value

为什么在我的情况下没有?

0 投票
1 回答
57 浏览

junit5 - 在 Junit 5 Jupiter 版本 5.4.0-RC1 中找不到 ClassExtensionContext

到目前为止,我使用的是 Junit Jupiter 5.4.0-M1。现在我想升级到 5.4.0-RC1 版本。

不幸的是,我的程序不再编译,因为(除其他外)类 ClassExtensionContext 再也找不到了。

有谁知道原因或是否有文档如何从 M1 迁移到 RC1?

0 投票
1 回答
1711 浏览

android - JUnit5 未生成 JUnit4 用于生成的测试结果 TEST-*.xml

当我在我的项目中使用 JUnit4 时,似乎每次运行测试时,它都会TEST-*.xml在 app/build/test-result 中生成一个报告。Jenkins 将使用这些 XML 报告来显示每个构建的失败和通过测试。

我在 build.gradle 中用 JUnit5 替换了 JUnit4:

使用 JUnit 5 运行测试时,我不再看到正在生成这些 TEST-*.xml 文件。一旦我回到 JUnit4,它们就是。

这在 JUnit5 中不再可用,还是我必须在每个测试中设置一些东西才能获得这些 XML 报告?

0 投票
2 回答
838 浏览

junit - 在 JUnit 5 中将 `Supplier` 作为消息提供者的选项的实际用途

JUnit 5 中的Assertions类允许传递Supplier<String>as amessageSupplier对象,该对象提供测试失败时报告的消息文本。

例如assertEquals

我想知道这样一个供应商的实际用途可能是什么,特别是在单元测试的背景下。

我可以想象也许本地化字符串,虽然当观众是开发项目的成员时本地化似乎有点奇怪。

➥ 除了硬编码消息字符串之外,传递这样的消息提供者还有其他实际用途吗?

0 投票
1 回答
358 浏览

templates - 通过 IntelliJ 2019 的“创建测试”功能重新定义用于创建 JUnit 5 类的模板

0 投票
0 回答
71 浏览

templates - 在 IntelliJ 中自动生成的 JUnit 5 测试方法的“BODY”元素中添加行

0 投票
1 回答
1838 浏览

java - java.lang.NoSuchMethodError: Lorg/junit/platform/commons/function/Try;

I want to use the latest JUnit version:

But when I compile the code I get this exception:

Do you know how I can fix this? I use Java 11.