草庐IT

Junit-Tests

全部标签

java - 强制 JUnit 一次运行一个测试用例

我遇到了一些非常高级的单元测试的问题(使用PowerMock进行模拟和JUnit4.5)。无需赘述,测试类的第一个测试用例总是会成功,但同一测试类中的任何后续测试用例都会失败。但是,例如,如果我选择只运行10个中的第5个测试用例,它将通过。因此,所有测试在单独运行时都会通过。有没有办法强制JUnit一次运行一个测试用例?我从ant脚本调用JUnit。我知道依赖测试用例的问题,但我无法确定这是为什么。测试用例中没有保存的变量,所以在@Before注释处无事可做。这就是为什么我正在寻找一种紧急解决方案,例如强制JUnit单独运行测试。 最佳答案

RJCS技能大赛单元测试JUnit实例(2024_01)

一.RJCS技能大赛单元测试JUnit实例:1.1根据下列流程图编写程序实现相应分析处理并显示结果。编写程序代码,使用JUnit框架编写测试类对编写的程序代码进行测试,测试类中设计最少的测试数据满足语句覆盖测试,测试类使用参数化测试(@Parameters)完成测试。使用assertEquals判断输入数据测试方法期望结果值和实际返回值是否一致。1.2程序源代码:packagea4;importorg.junit.Test;importorg.junit.runner.RunWith;importorg.junit.runners.Parameterized;importjava.util.A

java - 通过 Dijkstra 算法中私有(private)方法的 JUnit 测试用例

我正在尝试找出为类练习实现测试用例的最佳方法。我的类练习提供了已知的错误,因此我应该编写一个测试用例使其失败,从而找到错误。它涉及使用Dijkstra算法。这是所提供代码的正确版本:privateintgetNodeWithMinimumDistanceFromUnsettled(){intmin;intnode=0;Iteratoriterator=unsettled.iterator();node=iterator.next();min=distances[node];for(inti=1;i单独版本已知bug如下:if(unsettled.contains(i)){if(dist

java - JUnit 启动时间很慢

我正在处理一个相当小的项目(就依赖关系而言),每当我运行单元测试时,JVM加载需要8秒,然后在0.2秒内运行实际测试。我的环境:Java8Spring工具套件3.8.1.RELEASEJUnit4Windows8我担心我的环境中一定有什么东西导致这需要这么长时间,我希望有人以前见过这个并找到问题的根源并可能找到解决方案?例如如果我的PATH环境变量真的很长,那有什么关系吗?当我运行JUnit测试时到底发生了什么?我尝试运行的实际测试是:publicclassTemplateLocationCalculatorTest{privateTemplateLocationCalculatort

java - 在 JUnit 5 中参数化类和测试

有没有办法参数化测试类(就像你可以在JUnit4中使用Parameterized和@Parameters一样)和测试方法(就像你可以使用JUnitParams在JUnit4中或在JUnit5中使用@ParameterizedTest)?最后我需要得到参数的笛卡尔积。使用所需方法对java.nio.ByteBuffer进行部分测试的示例:publicclassByteBufferTest{privatestaticfinalintBUFFER_SIZE=16384;privatefinalByteOrderbyteOrder;privateByteBuffersut;@Factory(d

java - 从 Eclipse 导出的 JAR 中排除 JUnit

我正在使用EclipseJUnit集成,它自动将JUnit库包含到我的项目中。问题是,当我使用RunnableJAR文件目标导出我的项目时,它包含JUnit。有没有办法从导出的JAR中排除JUnit(最好是测试)? 最佳答案 如果您通过右键单击项目并选择导出然后选择JAR文件来创建JAR,则可以通过取消选中测试文件夹来从导出中删除测试。参见this相关讨论及this示例。 关于java-从Eclipse导出的JAR中排除JUnit,我们在StackOverflow上找到一个类似的问题:

java - 解决遗留 junit 测试套件中的 java classpath hell

假设我有一个包含以下测试的遗留JUnit测试套件:publicclassAwesomeTest{publicvoidtestBusinessLogic(){...[awesomemockinglibrary]...}}publicclassAmazingTest{publicvoidtestBusinessProcess(){...[amazingxmloperation]...}}现在假设AwesomeMocking库依赖于包含类org.useful.XMLClass的AwesomeBCEL字节码生成库,并且该库具有XMLClass的版本1。现在假设AmazingXml操作依赖于包含

java - JUnit Ant 任务不会输出到屏幕

上下文我正在使用ant1-9-0.jar,ant-junit-1.9.0.jar和ant-launcher-1.9.0.jar以编程方式运行JUnit测试。在我的代码中,我有这个返回JUnitTask的函数:/***GeneratesaJUnittaskwhichrunseverysingletestinanewJVM*@returntaskTheJUnittask*@throwsException*/publicJUnitTaskgenerateRunTestsTask()throwsException{/*NewJUnittask*/JUnitTasktask=newJUnitTa

javac junit 给出 "error: package org.junit does not exist"

我正在尝试在makefile中使用JUnit,但我无法让它工作。我的文件夹结构如下(makefile在myProject中):myProject|--bin|--main|--org|--myPackage|--test|--org||--myPackage||--lib其中/main包含主要文件,/test包含测试文件,/lib包含hamcrest-core-1.3.jar和junit-4.12.jar我的makefile如下:JAVAC=javacJVM=javaJAVADOC=javadocMKBIN=mkdir-pbinJAVAC_FLAGS=-g-dbin/JAVAC_CP=

java - Spring Boot 2.1.0 有 JUnit5 依赖,但如何摆脱它?

我刚刚将我的项目升级为使用SpringBoot2.1.0(之前是2.0.x)我有编译警告:[WARNING]Cannotfindannotationmethod'value()'intype'org.junit.jupiter.api.extension.ExtendWith':classfilefororg.junit.jupiter.api.extension.ExtendWithnotfound我可以添加依赖项org.junit.jupiter/junit-jupiter-api来解决警告,但我觉得这是一个“hack”。我不想看到该警告(尤其是我的项目将警告视为错误)并且我不想用