Rumah > Java > javaTutorial > Penggunaan rangka kerja ujian unit JUnit dalam projek Spring

Penggunaan rangka kerja ujian unit JUnit dalam projek Spring

PHPz
Lepaskan: 2024-04-18 16:54:02
asal
767 orang telah melayarinya

JUnit ialah rangka kerja ujian unit Java yang digunakan secara meluas dalam projek Spring dan boleh digunakan dengan langkah berikut: Tambahkan kebergantungan JUnit: org.junit.jupiterjunit-jupiter5.8.1testTulis kes ujian: gunakan @ExtendWith(SpringExtension.class) untuk mendayakan sambungan, gunakan @Autowired untuk menyuntik Beans , gunakan @BeforeEach dan @AfterEach sediakan dan bersihkan, dan tandakan kaedah ujian dengan @Test.

Penggunaan rangka kerja ujian unit JUnit dalam projek Spring

Aplikasi rangka kerja ujian unit JUnit dalam projek Spring

JUnit ialah rangka kerja ujian unit Java yang digunakan secara meluas yang boleh membantu pembangun menguji kod dengan cepat dan boleh dipercayai. Dalam projek Spring, JUnit boleh digunakan untuk menguji Kacang Spring dan logik lapisan perkhidmatan.

Mengkonfigurasi JUnit

Untuk menggunakan JUnit dalam projek Spring, anda perlu menambah kebergantungan yang diperlukan dalam projek:

<dependency>
  <groupId>org.junit.jupiter</groupId>
  <artifactId>junit-jupiter</artifactId>
  <version>5.8.1</version>
  <scope>test</scope>
</dependency>
Salin selepas log masuk

Menulis kes ujian

Untuk menulis kes ujian menggunakan JUnit

    ikut langkah ini: kelas ujian Gunakan anotasi @ExtendWith untuk mendayakan fungsi sambungan JUnit: @ExtendWith(SpringExtension.class)
  • @ExtendWith 注解来启用 JUnit 扩展功能:@ExtendWith(SpringExtension.class)
  • 使用 @Autowired 注解来注入要测试的 Bean
  • 使用 @BeforeEach@AfterEach 注解来执行测试前后的准备和清理工作
  • 使用 @Test 注解标记测试方法

实战案例

下面是一个测试 Spring 服务的简单示例:

@ExtendWith(SpringExtension.class)
class UserServiceTest {

  @Autowired
  private UserService userService;

  @Test
  void shouldFindUserById() {
    // Arrange
    long userId = 1L;

    // Act
    User user = userService.findById(userId);

    // Assert
    assertThat(user).isNotNull();
    assertThat(user.getId()).isEqualTo(userId);
    assertThat(user.getName()).isEqualTo("John Doe");
  }
}
Salin selepas log masuk

在这个示例中,@Autowired 注解将 UserService Bean 注入到测试类中,@Test 注解标记了一个测试方法。测试方法设置了一个示例用户 ID,调用 UserServicefindByIdGunakan anotasi @Autowired untuk menyuntik kod untuk diuji Bean

Gunakan @BeforeEach dan @AfterEach anotasi untuk melakukan penyediaan dan pembersihan sebelum dan selepas ujian Gunakan @Test anotasi untuk menandakan kaedah ujian

    Kes praktikal
  • Berikut ialah contoh mudah untuk menguji perkhidmatan Spring:
  • rrreee
  • Dalam contoh ini, anotasi @Autowired menyuntik UserService Bean ke dalam kelas ujian , anotasi @Test menandakan kaedah ujian. Kaedah ujian menyediakan ID pengguna sampel, memanggil kaedah findById UserService dan kemudian menegaskan bahawa objek pengguna yang dikembalikan adalah seperti yang diharapkan.
  • Sambungan
  • JUnit 5 menyediakan pelbagai sambungan untuk memudahkan ujian, seperti:

Ujian Berparameter: Membolehkan menjalankan kes ujian yang sama dengan set parameter berbeza.

Suntikan Ketergantungan🎜: Membolehkan suntikan kacang yang mudah dalam kelas ujian. 🎜🎜🎜Assertions Library (Assertions)🎜: Menyediakan pelbagai penegasan untuk menjadikan kod lebih mudah dibaca. 🎜🎜🎜🎜Kesimpulan🎜🎜🎜Rangka kerja ujian unit JUnit ialah alat yang sangat diperlukan dalam projek Spring, membolehkan pembangun menguji kod dengan cepat dan boleh dipercayai. Dengan mengkonfigurasi kebergantungan JUnit, menulis kes ujian dan memanfaatkan keupayaan sambungan, pembangun boleh meningkatkan kualiti kod dan memastikan aplikasi Spring berjalan dengan betul. 🎜

Atas ialah kandungan terperinci Penggunaan rangka kerja ujian unit JUnit dalam projek Spring. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan