spring-boot-starter-test
spring-boot-starter-test SPRING BOOT ka SABSE COMPREHENSIVE testing starter hai — JUnit 5 (MODERN test FRAMEWORK), Mockito (mocking library), AssertJ (FLUENT, READABLE assertions), Hamcrest (matchers), JSONassert, aur Spring TEST utilities (MockMvc, @SpringBootTest) — SAB EK SAATH.
Ye starter TEST SCOPE (<scope>test</scope>) mein hota hai — MATLAB YE DEPENDENCIES SIRF TEST CODE COMPILE/RUN karте waqt AVAILABLE hoती hain, FINAL PRODUCTION JAR mein INCLUDED NAHI hoti, isliye APPLICATION ka SIZE CHHOTA rehta hai.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
// Ek dependency se, SAB kuch available:
import org.junit.jupiter.api.Test;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.when;
@Test
void shouldFindUser() {
when(repository.findById(1L)).thenReturn(Optional.of(new User()));
assertThat(service.getUser(1L)).isNotNull(); // AssertJ fluent syntax
}- JUnit 5 + Mockito + AssertJ + Spring Test — SAB EK STARTER mein
- <scope>test</scope> = production JAR mein INCLUDED NAHI hota
- Spring Initializr mein DEFAULT INCLUDED — testing Boot workflow ka CORE hissa hai
spring-boot-starter-test EK "MEGA-STARTER" hai — JUnit 5 (test framework), Mockito (mocking), AssertJ (fluent assertions), Hamcrest (matchers), JSONassert, aur Spring Test/Spring Boot Test utilities — SAB EK SAATH, COMPATIBLE versions mein.
starter-test dependency mein <scope>test</scope> hota hai — MATLAB YE LIBRARIES SIRF TEST CODE COMPILE/RUN karте waqt AVAILABLE hoती hain, PRODUCTION JAR mein INCLUDED NAHI hoti. Isse FINAL JAR ka SIZE CHHOTA rehta hai.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>