问题标签 [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.
python - 将 googleanalytics 和 google2pandas 安装到 anaconda 环境时出现问题
我无法将包 googleanalytics 和 google2pandas 下载到 anaconda 环境
我试过了conda install package
要搜索可能提供您正在寻找的 conda 包的替代频道,请导航至
并使用页面顶部的搜索栏。
我希望至少安装其中一个软件包
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.source
,maven.compiler.target
用于我当前使用的 Java 11.0.2,来自Azul Systems的Zulu。
在 IntelliJ 的 Maven 面板上,我运行clean
和install
Lifecycle 事件。
在 JUnit 4 中运行测试
作为 的一部分install
,运行测试。这个quickstart
原型带有一个断言true
.
结果出现在Run
IntelliJ 的面板中。
[信息] 运行 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-api
和junit-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 下没有执行任何测试。
kotlin - Kotlin MockK:io.mockk.MockKException:找不到答案
这是我的代码片段:
我正在使用 JUnit5(木星)。我得到的例外是:
io.mockk.MockKException: no answer found for: ServerRequest(#1).cookies()
这很奇怪,因为如果我理解relaxed
正确,我的 ServerRequest 实例应该总是有一些value。
为什么在我的情况下没有?
junit5 - 在 Junit 5 Jupiter 版本 5.4.0-RC1 中找不到 ClassExtensionContext
到目前为止,我使用的是 Junit Jupiter 5.4.0-M1。现在我想升级到 5.4.0-RC1 版本。
不幸的是,我的程序不再编译,因为(除其他外)类 ClassExtensionContext 再也找不到了。
有谁知道原因或是否有文档如何从 M1 迁移到 RC1?
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 报告?
junit - 在 JUnit 5 中将 `Supplier` 作为消息提供者的选项的实际用途
JUnit 5 中的Assertions
类允许传递Supplier<String>
as amessageSupplier
对象,该对象提供测试失败时报告的消息文本。
例如assertEquals
:
我想知道这样一个供应商的实际用途可能是什么,特别是在单元测试的背景下。
我可以想象也许本地化字符串,虽然当观众是开发项目的成员时本地化似乎有点奇怪。
➥ 除了硬编码消息字符串之外,传递这样的消息提供者还有其他实际用途吗?
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.