溫馨提示×

如何在Spring Boot框架中進行單元測試

小樊
88
2024-08-12 21:45:39
欄目: 編程語言

在Spring Boot框架中進行單元測試通常使用JUnit和SpringBootTest注解。下面是一個簡單的示例:

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;

import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.Mockito.when;

@SpringBootTest
public class UserServiceTest {

    @Autowired
    private UserService userService;

    @MockBean
    private UserRepository userRepository;

    @Test
    public void testGetUserById() {
        User user = new User(1L, "John Doe");
        when(userRepository.findById(1L)).thenReturn(java.util.Optional.of(user));

        User found = userService.getUserById(1L);

        assertThat(found.getId()).isEqualTo(1L);
        assertThat(found.getName()).isEqualTo("John Doe");
    }
}

在上面的示例中,我們使用@SpringBootTest注解來指示Spring Boot為單元測試加載應用程序上下文。 @Autowired用于注入要測試的服務,@MockBean用于模擬依賴的UserRepository。我們使用Mockito來模擬UserRepository的行為,然后調用userService的方法并斷言返回的結果。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女