Spring Boot Testing Concepts: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 30: Line 30:


[[@IntegrationTest]], [[@WebIntegrationTest]]
[[@IntegrationTest]], [[@WebIntegrationTest]]
=The Default XyzApplicationTests=
Spring Initializr creates a
<syntaxhighlight lang='java'>
@SpringBootTest
class XyzApplicationTests {
  @Test
  void contextLoads() {
  }
}
</syntaxhighlight>
<font color=darkgray>How does this work? How is this useful? Does it use name conventions?</font>


=SpringBoot Test Example=
=SpringBoot Test Example=

Revision as of 01:07, 3 October 2021

External

Internal

Overview

Dependencies

Use:

dependencies {
    testImplementation('org.springframework.boot:spring-boot-starter-test')
}

This started dependency pulls everything that is needed to write JUnit tests.

Annotations

@SpringBootTest - this is required, otherwise beans won't get injected in our tests.

@WebMvcTest

@RunWith(SpringRunner.class)

@IntegrationTest, @WebIntegrationTest

The Default XyzApplicationTests

Spring Initializr creates a

@SpringBootTest
class XyzApplicationTests {
  @Test
  void contextLoads() {
  }
}

How does this work? How is this useful? Does it use name conventions?

SpringBoot Test Example

@RunWith(SpringRunner.class)
@SpringBootTest
public class MyTests {

    @Autowired
    private SomeComponent someComponentWeWantToTest;

    // ...

}

Testing Logging Configuration

By default, test logging is executed by Logback.

Spring Boot Mockito Support

Spring Boot Mockito Support