MockMVC没有自动装配,它是null。

huangapple go评论90阅读模式
英文:

MockMVC is not autowired, it is null

问题

I am having an issue with injecting MockMvc to my test class. I tried a few options, but none of them works.

1 option: basically the same as here, manually creating MockMvc

2 option:

  1. package com.application.controller;
  2. import org.junit.jupiter.api.Test;
  3. import org.junit.runner.RunWith;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
  6. import org.springframework.boot.test.context.SpringBootTest;
  7. import org.springframework.test.context.junit4.SpringRunner;
  8. import org.springframework.test.web.servlet.MockMvc;
  9. import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
  10. import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
  11. import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
  12. @RunWith(SpringRunner.class)
  13. @SpringBootTest
  14. @AutoConfigureMockMvc
  15. public class DishControllerTest {
  16. @Autowired
  17. public MockMvc mockMvc;
  18. @Test
  19. void getDishes() throws Exception {
  20. this.mockMvc.perform(
  21. get("/"))
  22. .andDo(print())
  23. .andExpect(status().isOk());
  24. }
  25. }
  1. Also tried the second option with @WebMvcTest annotation instead of @AutoConfigureMockMvc

MockMVC is null all the time.
StackTrace:

  1. java.lang.Exception: No runnable methods
  2. ...
  3. java.lang.NullPointerException
  4. at com.application.controller.DishControllerTest.getDishes(DishControllerTest.java:27)
  5. ...

pom (only test dependencies):

  1. <parent>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-parent</artifactId>
  4. <version>2.0.5.RELEASE</version>
  5. </parent>
  6. <dependency>
  7. <groupId>org.springframework.boot</groupId>
  8. <artifactId>spring-boot-starter-test</artifactId>
  9. </dependency>
  10. <dependency>
  11. <groupId>org.junit.jupiter</groupId>
  12. <artifactId>junit-jupiter-engine</artifactId>
  13. <version>5.1.0</version>
  14. <scope>test</scope>
  15. </dependency>
  16. <dependency>
  17. <groupId>org.junit.platform</groupId>
  18. <artifactId>junit-platform-engine</artifactId>
  19. <version>1.5.0-M1</version>
  20. <scope>test</scope>
  21. </dependency>
  22. <dependency>
  23. <groupId>org.mockito</groupId>
  24. <artifactId>mockito-core</artifactId>
  25. <version>3.4.4</version>
  26. <scope>test</scope>
  27. </dependency>

Do you have any ideas why is it happening? Is it possible because pom dependencies are clashing?

英文:

I am having an issue with injecting MockMvc to my test class. I tried a few options, but none of them works.

1 option: basically the same as here, manually creating MockMvc

https://stackoverflow.com/questions/48589893/autowire-mockmvc-spring-data-rest

2 option:

  1. package com.application.controller;
  2. import org.junit.jupiter.api.Test;
  3. import org.junit.runner.RunWith;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
  6. import org.springframework.boot.test.context.SpringBootTest;
  7. import org.springframework.test.context.junit4.SpringRunner;
  8. import org.springframework.test.web.servlet.MockMvc;
  9. import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
  10. import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
  11. import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
  12. @RunWith(SpringRunner.class)
  13. @SpringBootTest
  14. @AutoConfigureMockMvc
  15. public class DishControllerTest {
  16. @Autowired
  17. public MockMvc mockMvc;
  18. @Test
  19. void getDishes() throws Exception {
  20. this.mockMvc.perform(
  21. get(&quot;/&quot;))
  22. .andDo(print())
  23. .andExpect(status().isOk());
  24. }
  1. Also tried the second option with @WebMvcTest annotation instead of @AutoConfigureMockMvc

MockMVC is null all the time.
StackTrace:

  1. java.lang.Exception: No runnable methods
  2. at org.junit.runners.BlockJUnit4ClassRunner.validateInstanceMethods(BlockJUnit4ClassRunner.java:191)
  3. at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:128)
  4. at org.junit.runners.ParentRunner.validate(ParentRunner.java:416)
  5. at org.junit.runners.ParentRunner.&lt;init&gt;(ParentRunner.java:84)
  6. at org.junit.runners.BlockJUnit4ClassRunner.&lt;init&gt;(BlockJUnit4ClassRunner.java:65)
  7. at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.&lt;init&gt;(SpringJUnit4ClassRunner.java:137)
  8. at org.springframework.test.context.junit4.SpringRunner.&lt;init&gt;(SpringRunner.java:49)
  9. at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  10. at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
  11. at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
  12. at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
  13. at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
  14. at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
  15. at org.junit.vintage.engine.discovery.DefensiveAllDefaultPossibilitiesBuilder$DefensiveAnnotatedBuilder.buildRunner(DefensiveAllDefaultPossibilitiesBuilder.java:113)
  16. at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
  17. at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
  18. at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
  19. at org.junit.vintage.engine.discovery.DefensiveAllDefaultPossibilitiesBuilder.runnerForClass(DefensiveAllDefaultPossibilitiesBuilder.java:56)
  20. at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
  21. at org.junit.vintage.engine.discovery.TestClassRequestResolver.createRunnerTestDescriptor(TestClassRequestResolver.java:55)
  22. at org.junit.vintage.engine.discovery.VintageDiscoverer.lambda$discover$0(VintageDiscoverer.java:53)
  23. at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
  24. at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
  25. at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
  26. at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
  27. at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
  28. at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
  29. at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:312)
  30. at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:734)
  31. at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
  32. at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
  33. at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
  34. at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
  35. at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
  36. at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
  37. at org.junit.vintage.engine.discovery.VintageDiscoverer.discover(VintageDiscoverer.java:55)
  38. at org.junit.vintage.engine.VintageTestEngine.discover(VintageTestEngine.java:61)
  39. at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:177)
  40. at org.junit.platform.launcher.core.DefaultLauncher.discoverRoot(DefaultLauncher.java:164)
  41. at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:128)
  42. at com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:69)
  43. at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
  44. at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:230)
  45. at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:58)
  46. java.lang.NullPointerException
  47. at com.application.controller.DishControllerTest.getDishes(DishControllerTest.java:27)
  48. at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  49. at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  50. at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  51. at java.base/java.lang.reflect.Method.invoke(Method.java:564)
  52. at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:436)
  53. at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:115)
  54. at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$6(TestMethodTestDescriptor.java:170)
  55. at org.junit.jupiter.engine.execution.ThrowableCollector.execute(ThrowableCollector.java:40)
  56. at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:166)
  57. at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:113)
  58. at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:58)
  59. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.lambda$executeRecursively$3(HierarchicalTestExecutor.java:112)
  60. at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
  61. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.executeRecursively(HierarchicalTestExecutor.java:108)
  62. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.execute(HierarchicalTestExecutor.java:79)
  63. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.lambda$executeRecursively$2(HierarchicalTestExecutor.java:120)
  64. at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
  65. at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
  66. at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
  67. at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
  68. at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
  69. at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
  70. at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
  71. at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
  72. at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
  73. at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
  74. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.lambda$executeRecursively$3(HierarchicalTestExecutor.java:120)
  75. at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
  76. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.executeRecursively(HierarchicalTestExecutor.java:108)
  77. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.execute(HierarchicalTestExecutor.java:79)
  78. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.lambda$executeRecursively$2(HierarchicalTestExecutor.java:120)
  79. at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
  80. at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
  81. at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
  82. at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
  83. at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
  84. at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
  85. at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
  86. at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
  87. at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
  88. at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
  89. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.lambda$executeRecursively$3(HierarchicalTestExecutor.java:120)
  90. at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
  91. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.executeRecursively(HierarchicalTestExecutor.java:108)
  92. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor$NodeExecutor.execute(HierarchicalTestExecutor.java:79)
  93. at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:55)
  94. at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:43)
  95. at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:229)
  96. at org.junit.platform.launcher.core.DefaultLauncher.lambda$execute$6(DefaultLauncher.java:197)
  97. at org.junit.platform.launcher.core.DefaultLauncher.withInterceptedStreams(DefaultLauncher.java:211)
  98. at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:191)
  99. at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:128)
  100. at com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:69)
  101. at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
  102. at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:230)
  103. at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:58)

pom (only test dependencies):

  1. &lt;parent&gt;
  2. &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
  3. &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt;
  4. &lt;version&gt;2.0.5.RELEASE&lt;/version&gt;
  5. &lt;/parent&gt;
  6. &lt;dependency&gt;
  7. &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
  8. &lt;artifactId&gt;spring-boot-starter-test&lt;/artifactId&gt;
  9. &lt;/dependency&gt;
  10. &lt;dependency&gt;
  11. &lt;groupId&gt;org.junit.jupiter&lt;/groupId&gt;
  12. &lt;artifactId&gt;junit-jupiter-engine&lt;/artifactId&gt;
  13. &lt;version&gt;5.1.0&lt;/version&gt;
  14. &lt;scope&gt;test&lt;/scope&gt;
  15. &lt;/dependency&gt;
  16. &lt;dependency&gt;
  17. &lt;groupId&gt;org.junit.platform&lt;/groupId&gt;
  18. &lt;artifactId&gt;junit-platform-engine&lt;/artifactId&gt;
  19. &lt;version&gt;1.5.0-M1&lt;/version&gt;
  20. &lt;scope&gt;test&lt;/scope&gt;
  21. &lt;/dependency&gt;
  22. &lt;dependency&gt;
  23. &lt;groupId&gt;org.mockito&lt;/groupId&gt;
  24. &lt;artifactId&gt;mockito-core&lt;/artifactId&gt;
  25. &lt;version&gt;3.4.4&lt;/version&gt;
  26. &lt;scope&gt;test&lt;/scope&gt;
  27. &lt;/dependency&gt;

Do you have any ideas why is it happening? Is it possible because pom dependencies are clashing?

答案1

得分: 15

异常是因为您正在使用Junit Jupiter的@Test注解,但是使用了Junit 4的@RunWith注解。您应该要么使用Junit 4中的org.junit.Test要么在类上使用@ExtendWith(SpringExtension.class)注解以使用Junit Jupiter。

@WebMvcTest可能是您想要的(它隐含了@AutoConfigureMockMvc等内容)。

相关文档

英文:

The exception is being thrown because you are using a Junit Jupiter @Test annotation but the Junit 4 @Runwith annotation. You should either use org.junit.Test from Junit 4 or annotate the class with @ExtendWith(SpringExtension.class) to use Junit Jupiter.

@WebMvcTest is probably what you want (it implies @AutoConfigureMockMvc, amongst other things).

Relevant docs

答案2

得分: 2

这是翻译好的部分:

"It was a compatibility issue + incorrect usage of annotations.

What I did:

  1. Replaced standalone JUnit and Mockito dependencies with spring-boot-starter-test

  2. Upgrading annotations to work with junit.jupiter instead of junit.test

Here is the working code:

  1. import com.application.service.IDishService;
  2. import com.application.service.IOrderService;
  3. import org.junit.jupiter.api.Test;
  4. import org.junit.jupiter.api.extension.ExtendWith;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
  7. import org.springframework.boot.test.mock.mockito.MockBean;
  8. import org.springframework.test.context.junit.jupiter.SpringExtension;
  9. import org.springframework.test.web.servlet.MockMvc;
  10. import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
  11. import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
  12. import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
  13. @ExtendWith(SpringExtension.class)
  14. @WebMvcTest(DishController.class)
  15. public class DishControllerTest {
  16. @Autowired
  17. public MockMvc mockMvc;
  18. @MockBean
  19. private IOrderService orderService;
  20. @MockBean
  21. private IDishService dishService;
  22. @Test
  23. public void getDishesTest() throws Exception {
  24. this.mockMvc.perform(
  25. get(&quot;/&quot;))
  26. .andDo(print())
  27. .andExpect(status().isOk());
  28. }
  29. }
英文:

It was a compatibility issue + incorrect usage of annotations.

What I did:

  1. Replaced standalone JUnit and Mockito dependencies with spring-boot-starter-test

  2. Upgrading annotations to work with junit.jupiter instead of junit.test

Here is the working code:

  1. import com.application.service.IDishService;
  2. import com.application.service.IOrderService;
  3. import org.junit.jupiter.api.Test;
  4. import org.junit.jupiter.api.extension.ExtendWith;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
  7. import org.springframework.boot.test.mock.mockito.MockBean;
  8. import org.springframework.test.context.junit.jupiter.SpringExtension;
  9. import org.springframework.test.web.servlet.MockMvc;
  10. import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
  11. import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
  12. import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
  13. @ExtendWith(SpringExtension.class)
  14. @WebMvcTest(DishController.class)
  15. public class DishControllerTest {
  16. @Autowired
  17. public MockMvc mockMvc;
  18. @MockBean
  19. private IOrderService orderService;
  20. @MockBean
  21. private IDishService dishService;
  22. @Test
  23. public void getDishesTest() throws Exception {
  24. this.mockMvc.perform(
  25. get(&quot;/&quot;))
  26. .andDo(print())
  27. .andExpect(status().isOk());
  28. }

答案3

得分: 1

使用Junit 5,我们不需要@SpringBootTest,否则它将寻找实际的配置。

另外,请将@RunWith(SpringRunner.class)改为@ExtendWith(SpringExtension.class)@ExtendWith(MockitoExtension.class)

代码中似乎还缺少了@InjectMocks

最后,您需要添加mockMvc = MockMvcBuilders.standaloneSetup(DishController)

请在您的端上尝试以下代码,它应该可以工作。

  1. @ExtendWith(SpringExtension.class)
  2. public class DishControllerTest {
  3. @Autowired
  4. public MockMvc mockMvc;
  5. @InjectMocks
  6. private DishController dishController;
  7. @Test
  8. void getDishes() throws Exception {
  9. this.mockMvc.perform(
  10. get("/"))
  11. .andDo(print())
  12. .andExpect(status().isOk());
  13. }
  14. }
英文:

With Junit 5 we don't need @SpringBootTest, you can remove it otherwise it will look for actual configuration.

Also, change your @RunWith(SpringRunner.class) to @ExtendWith(SpringExtension.class) or @ExtendWith(MockitoExtension.class).

It seems @InjectMocks is also missing in code.

finally you need to add the mockMvc = MockMvcBuilders.standaloneSetup(DishController).

Try the below code at your end, it should work.

  1. @ExtendWith(SpringExtension.class)
  2. public class DishControllerTest {
  3. @Autowired
  4. public MockMvc mockMvc;
  5. @InjectMocks
  6. private DishController dishController;
  7. @Test
  8. void getDishes() throws Exception {
  9. this.mockMvc.perform(
  10. get(&quot;/&quot;))
  11. .andDo(print())
  12. .andExpect(status().isOk());
  13. }
  14. }

答案4

得分: 0

Had the same issue!
Spring Boot 2.4.3 and Junit 5.

Eventually, I tried to remotely debug the test in maven and found out that it was the whole context not loading and more over my @BeforeEach method was also not invoked.

After a few searches, the issue was missing maven-surefire-plugin. Adding 3.0.0-M7 version of it solved the issue.

英文:

Had the same issue!
Spring Boot 2.4.3 and Junit 5.

Eventually, I tried to remotely debug the test in maven and found out that it was the whole context not loading and more over my @BeforeEach method was also not invoked.

After a few searches, the issue was missing maven-surefire-plugin. Adding 3.0.0-M7 version of it solved the issue.

huangapple
  • 本文由 发表于 2020年8月8日 11:06:18
  • 转载请务必保留本文链接:https://go.coder-hub.com/63311426.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定