问题标签 [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.
java - Java JUnit 5 注释差异
我看到根据JUnit 5 User Guide介绍了新的 JUnit Jupiter 。
JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage
我对在整个库中使用的同名注释感到困惑。这两者之间有什么显着差异吗?
org.junit.Test
org.junit.jupiter.api.Test
上面链接页面的描述解释了注释org.junit.jupiter.api.Test
如下:
表示方法是测试方法。与 JUnit 4 的 @Test 注解不同,此注解不声明任何属性,因为 JUnit Jupiter 中的测试扩展基于它们自己的专用注解进行操作。这些方法是继承的,除非它们被覆盖。
据我了解,主要区别在于新的注释属性被替换为专用的注释和方法(例如assertTimeout(...)
),与旧的@Test(timeout = 1000)
.
该文档谈到org.junit.Test
了 JUnit 4 中的旧注释,但是,并没有清楚地解释版本 JUnit 5 中相同注释的用途,令我惊讶的是,它没有标记为@Deprecated
- 这意味着仍然有使用它的目的JUnit 5 中的注释,对吗?
我的问题是 JUnit 5 的目的是什么org.junit.Test
,为什么它不被弃用,以及我在上面提到的两个注释之间的选择应该基于什么。
spring-boot - 使用 Gradle 4.6 的 jUnit 5 HTML 报告
我正在尝试生成 JUnit 5 测试用例的 HTML 报告。
这是我的 Gradle.build 文件
我已经按照 Gradle docs Links使用了 testReport
当我运行 Gradle 任务时,它运行所有测试用例,生成 XML 报告,但不生成 HTML 报告
在构建日志中,我看到
:testReport 无源
任何建议为什么它说 NO-SOURCE ?
谢谢
python-3.x - 由于用户权限,TensorFlow 安装被拒绝
我尝试在 Jupiter 上网本 python 2.7 上运行 tensorflow,但我意识到它需要 3.6 pythong 版本,所以我按照以下步骤操作:
使用 Anaconda 安装
通过调用以下命令创建一个名为 tensorflow 的 conda 环境:
通过发出以下命令激活 conda 环境:
(tensorflow)C:> # 你的提示应该改变发出适当的命令在你的 conda 环境中安装 TensorFlow。要安装仅 CPU 版本的 TensorFlow,请输入以下命令:
要安装 TensorFlow 的 GPU 版本,请输入以下命令(单行):
**
- 但是这行代码
**
告诉我这个错误:
由于 EnvironmentError 无法安装软件包:[WinError 5] 访问被拒绝:'C:\Users\idan\AppData\Local\Continuum\anaconda2\envs\tensorflow\Lib\site-packages\numpy\.libs\libopenblas。 BNVRK7633HSX7YVO2TADGR4A5KEKXJAW.gfortran-win_amd64.dll' 考虑使用该
--user
选项或检查权限。
我试图更改用户权限并以管理员身份打开 anaconda cmd,但它没有帮助。
android - java.lang.NoSuchMethodError:org.junit.platform.launcher.Launcher.execute
我正在尝试运行以下示例单元测试用例
但我得到以下异常
即使我已经更新了所有的 Junit 依赖 build.gradle 文件,如下所示
有什么解决办法吗?
selenium-webdriver - 如何根据环境使用不同的 webdrivers
我使用硒木星。我从这样的方法参数中得到一个 webdriver:
现在我想在网格上运行测试,所以我需要使用基于环境的 webdriver。例如,在我的 PC 上开发测试时,我想使用(本地)ChromeDriver,但是当使用 Jenkins 在网格上运行测试时,我想使用 RemoteDriver。所以我需要这样的东西:(当 env = 0 时给我本地 Chrome 或在 env = 1 时给我远程 Chrome 但它不起作用)
unit-testing - 使用 JUnit 5 时 Powermock 抛出 ClassNotPreparedException
我有一个示例测试类,我想在其中模拟一个静态类。我的 build.gradle 就像
当我尝试我的测试用例时
但是当我运行它时,我遇到了异常
有什么办法可以达到同样的效果
java - Junit 5 - 没有为参数注册 ParameterResolver
我可以在没有任何特殊测试框架的情况下编写和执行 Selenium 脚本,但我想使用 Junit 5(因为我们依赖于其他工具)并且org.junit.jupiter.api.extension.ParameterResolutionException
在使用 Junit 4 时我从未见过这样的错误。
目前它是 Junit 5,我用谷歌搜索它以获得某种想法,但无法解决问题。
JUnit 5
使用,Eclipse 4.8
和测试脚本Selenium
:
堆栈跟踪:
org.junit.jupiter.api.extension.ParameterResolutionException:没有为可执行文件 [public login.loginTest(org.openqa.selenium.WebDriver)] 中的参数 [org.openqa.selenium.WebDriver arg0] 注册的 ParameterResolver。在 org.junit.jupiter.engine.execution.ExecutableInvoker.resolveParameter(ExecutableInvoker.java:191)
unit-testing - java.lang.IncompatibleClassChangeError org.junit.jupiter.params.provider.Arguments 必须是 InterfaceMethodref 常量
运行这个 JUnit 5 测试给我以下错误:方法
org.junit.jupiter.params.provider.Arguments.of([Ljava/lang/Object;)Lorg/junit/jupiter/params/provider/Arguments; 必须是 InterfaceMethodref 常量 java.lang.IncompatibleClassChangeError: Method org.junit.jupiter.params.provider.Arguments.of([Ljava/lang/Object;)Lorg/junit/jupiter/params/provider/Arguments; 必须是 InterfaceMethodref 常量
我使用 Java 10,并且在 build.gradle 中启用了 JUnit 5。