jjzjj

junit-runner

全部标签

java - 如何在 JUnit 中测试 void 方法

这个问题在这里已经有了答案:HowtotestvoidmethodwithJunittestingtools?(6个答案)关闭9年前。如何使用JUnit测试void方法。voidadd(inta,intb){intc=a+b;}如何在Java中使用Junit测试上述方法。

java - 使用 jUnit 和 Mockito 对外部 REST API 调用进行单元测试

我正在SpringBootJava应用程序中为服务类构建单元测试。服务类对返回JSON响应的RESTAPI服务进行外部调用。我正在使用Mockito模拟这个调用。我在模拟服务器响应中对JSON进行硬编码。在单元测试中使用硬编码JSON是一种不好的做法吗?如果JSON结构改变,那么测试应该失败是我的推理。是否有更好的最佳实践在哪里执行此操作?下面的示例片段:实际代码是有效的,为了简洁起见,我只是编辑了这个片段以表达想法,所以如果您发现任何错误,请发表评论:publicclassUserServiceTestextendsTestCase{privatestaticfinalStringM

java - JUnit 测试自定义异常

这个问题在这里已经有了答案:JunitTestCaseforexception[closed](1个回答)关闭7年前。我正在使用JUnit,不太确定如何测试自定义异常类。我创造了,publicclassCustomExceptionextendsException{//@parammessageistheexceptionmessagepublicCustomException(finalStringmessage){super(message);}//@parammessageistheexceptionmessage//@paramcauseisthecauseoftheorigi

java - Gradle 下的 JUnit 5 具有多个源集

我有一个项目要放在一起,我想使用JUnit5。我已经为单元测试做好了准备。但是我确实有多个测试源集-我还有一个用于验收测试。我正在努力弄清楚如何让JUnit5在一个任务中运行单元测试-在src/test中定义-在另一个任务中运行验收测试-在“acceptanceTest”源集中定义并位于“src/acceptance”中任务。我之前已经使用JUnit4和Cucumber进行了此操作,但JUnit5插件似乎不想这样工作。build.gradle:buildscript{ext{jackson_version="2.9.0.pr4"//IntelliJneedsM4junitJupiter

java - 如何在 junit 中使用未捕获的异常处理程序进行多线程测试?

我有以下代码,我希望它能成功运行直到完成,但代码在“fail("thisshouldnotbereached");”行失败。有人可以解释为什么不调用默认的未捕获异常处理程序吗:publicclassUncaughtExceptionTestextendsTestCaseimplementsUncaughtExceptionHandler{privatefinalListuncaughtExceptions=newCopyOnWriteArrayList();classUncaughtExceptionTestInnerClassimplementsRunnable{privatefin

java - SetUp,初始化Junit测试

我正在尝试测试以不同方式对字符串数组进行排序的3个类!我知道有一种方法可以初始化一个数组,然后在我的每个测试中使用它们。到目前为止,这是我的代码:publicclassSortingTest{publicinsertionSortis=newinsertionSort();publicbubbleSortbs=newbubbleSort();@TestpublicvoidtestBubbleSort(){String[]sortedArray={"Chesstitans","Ludo","Monkey","Palle"};bs.sort(sortedArray);assertArray

java - 如何使 log4j error() 调用在 jUnit 测试中抛出异常?

我有一个正在使用JUnit(Junit3和4风格的混合)测试的Java项目,其中被测试的类可能会记录log4j错误。如果记录了这样的错误,我想让单元测试失败。是否有一种通用的方法来配置log4j或单元测试基础结构,以在被测代码中对log4jerror()方法进行任何调用都会抛出运行时异常,从而导致测试失败?AOP可能是一种方式,但我也对其他可能性感兴趣。此处的目的是清除代码中错误使用log4jerror()的地方。也就是说,当错误被记录但没有发生异常或错误处理时,它要么不是真正的错误,要么是并且应该被引发。例如:publicclassMyTestextendsTestCase{publ

java - 使用 Mockito 在 JUnit 中使用 PowerMock 和 PowerRule 获取 javassist.NotFoundException

我在JUnit中使用Mockito集成了PowerMock和PowerRule。这是我的依赖项:javassistjavassist3.12.0.GAasmasm3.3.1cglibcglib2.2.2org.powermocpowermock-module-junit41.4.12testorg.powermockpowermock-api-mockito1.4.12testorg.powermockpowermock-module-junit4-rule1.4.12testorg.powermockpowermock-classloading-objenesis1.4.12test

java - Mockito中是否有类似于Junit Setup Method的东西

我有以下场景interfaceDAO{Stringa();Stringb();Stringc();}我创建了这个DAO接口(interface)的模拟,并将其提供给名为DAOProcess的东西。在DAOProcess中,我有各种调用DAO方法a、b和c的方法。现在每次我需要对DAOProcess中的方法进行单元测试时,我都会写成when(mockDAO.a()).thenReturn("test")。无论如何,我可以将这些when(mockDAO.a()).thenReturn("test")移动到所有测试用例吗? 最佳答案 如果

java - 在 JUnit 测试中捕获 AssertionError 是个好主意吗?

我有一个对象作为API调用的结果,我想声明一个成员变量的值。此值可以是两个预期值之一,具体取决于API调用首先“看到”并首先设置的内容。因此,如果对一个值的断言失败,我想在将测试声明为失败之前对另一个值进行断言。这样做的最佳方法是什么?我现在拥有的是:try{assertEquals("message",someObject.getValue1(),expectedValue1);}catch(AssertionErrorae){assertEquals("message",someObject.getValue1(),expectedValue2);}我只是不确定这是否是一种可接受的