草庐IT

java: 程序包org.junit.jupiter.api不存在

问题描述:使用maven开发springboot项目练习,测试出现了 java:程序包org.junit.jupiter.api不存在的问题问题分析:缺少org.junit.jupiter.api相关的依赖解决方法:在pom.xml文件中添加以下依赖,或者根据提示信息添加自动添加依赖 方法1:  org.junit.jupiterjunit-jupiterRELEASEtest方法2:  自动添加依赖 

java - 将 JUnit 类别与 Maven Failsafe 插件一起使用

我正在使用JUnit类别将集成测试与单元测试分开。Surefire插件配置有效——它跳过了用我的标记接口(interface)IntegrationTest注释的测试。但是,Failsafe插件不会选择集成测试。我什至尝试指定junit47提供程序,但在集成测试阶段运行零测试。这是pom.xml片段:org.apache.maven.pluginsmaven-failsafe-plugin2.12integration-testcom.mycompany.test.IntegrationTestcom.mycompany.test.UnitTestorg.apache.maven.su

java - assertEqual NullPointerException 的 JUnit 测试

我不确定为什么测试用例没有输出true。这两种情况都应该给出一个NullPointerException。我试过这样做(不完全相同,但它给出了true的输出):StringnullStr=null;//@TestpublicintNullOutput1(){nullStr.indexOf(3);return0;}//@Test(expected=NullPointerException.class)publicintNullOutput2(){nullStr.indexOf(2);return0;}@Test(expected=NullPointerException.class)pu

java - assertEquals(Double, Double) 和 assertEquals(double, double, delta) 之间的 Junit 区别

我有一个junit测试断言两个Double对象,具有以下内容:Assert.assertEquals(Doubleexpected,Doubleresult);这很好,然后我决定将其更改为使用原始double而不是它被弃用,除非您还提供delta。所以我想知道在这个assertEquals中使用Double对象或原始类型有什么区别?为什么使用没有增量的对象可以,但是不推荐使用没有增量的基元?Java是否在后台执行某些已考虑默认增量值的操作?谢谢。 最佳答案 没有assertmethodinJUnit带签名assertEquals(D

java - JerseyTest 和 JUnit 抛出 NullPointerException

我在jersey测试框架方面遇到了一些问题。如果我使用@Before和@After注释,则目标方法将抛出NullPointerException。我以为JerseyTest与JUnit一起工作?我的问题在哪里?Jersey:2.12JUnit:4.11失败的代码:publicclassMyResourceTestextendsJerseyTest{@BeforepublicvoidsetUp(){}@AfterpublicvoidtearDown(){}@OverrideprotectedApplicationconfigure(){returnnewResourceConfig(My

java - 需要帮助在 Mac 上安装 JUnit/How to add JUnit to Path environment variable on Macos

我不知道如何将JUnit正确安装到我的mac上。我知道我应该将它添加到路径环境变量中,并且我已经尝试了一些我在谷歌上找到的关于如何做到这一点的教程,但我不断收到错误。这是我使用的教程的链接:http://hathaway.cc/post/69201163472/how-to-edit-your-path-environment-variables-on-mac-os-x感觉第3步做错了,顺便把junit.jar文件放到了Library文件夹下。任何帮助将不胜感激! 最佳答案 初步检查:首先检查你的JRE是否安装好了。您应该能够打开终

java - 使用 JUnit 3.x 与 JUnit 4.x 运行测试仍然是最佳实践吗?

我有一段时间没看过这个了,但如果我没记错的话,ant和maven仍然依赖JUnit3进行单元测试(从maven2.09开始,默认的POM文件仍然有JUnit3.81)。坚持使用JUnit3而不是使用最新最好的仍然有意义吗?我可能会失踪的任何充分理由? 最佳答案 我看不出有什么理由坚持使用3.x版本。大多数工具与4.x兼容已有一段时间了。我坚持使用3.x的唯一原因是在java1.4环境中(因为没有其他方法)。顺便说一句,maven在2.1开始转Java5,所以他们有机会提出junit4.x

java - 不同情况下的jUnit相同异常

我正在为解析字符串的构造函数编写jUnit测试,然后检查许多内容。当有错误的数据时,对于每件事,都会抛出一些带有不同消息的IllegalArgumentException。所以我想为它编写测试,但我如何识别抛出的错误?这是我该怎么做:@Test(expected=IllegalArgumentException.class)publicvoidtestRodneCisloRok(){newRodneCislo("891415",dopocitej("891415"));}这就是我想要的样子,但我不知道是否有可能以某种方式写出来:@Test(expected=IllegalArgumen

java - JUnit 的 assumeTrue 如何与 "before"和 "after"注释一起工作?

我正在寻找关于如何Assume.assumeTrue()的验证在JUnit工作。我想在@BeforeClass中使用它方法,以便在不满足条件时我可以避免运行我的测试套件。但是,我想知道该方法的性质。如果assumeTrue收到一个带有假值的参数,它是跳过方法的其余部分(用@BeforeClass注释)还是执行剩余指令的其余部分。我也很好奇它可能对注释方法的任何其他影响:@After@Before@AfterClass编辑:在通过非常基本的测试运行它之后,如果assumeTrue(false)曾经运行过,那么该方法的其余部分以及任何用@Test注释的方法都将被忽略@After或@Befo

java - 使用 JUnit 运行测试用例时,在 Eclipse 调试中禁用拖放到框架功能

环境:Linux、EclipseJuno、Java7、JUnit当一个简单的应用程序(一个带有main方法的java类)在Debug模式下运行时,“DroptoFrame”功能在Eclipse中运行良好。但是,如果从junit测试用例调用相同的方法,则Eclipse中的“DroptoFrame”功能将被禁用。来自文档NotethiscommandisonlyavailableifthecurrentVMsupportsdroptoframeandtheselectedstackframeisnotthetopframeoraframeinanativemethod.正如我们在运行jun