Klik untuk melihat kod sumber @SpringBootTest
Anda boleh menambah konfigurasi sementara kemudian, atau anda boleh menggunakan arahan parameter baris args disediakan. Parameter khusus ujian yang ditetapkan akan mengatasi parameter dalam fail konfigurasi.
package com; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest(args = {properties = {"test.properties=1234"}) public class TestProperties { @Value("${test.properties}") private String ps; @Test public void test(){ System.out.println(ps); } }
Anda juga boleh menggunakan parameter baris arahan
args = {"--test.properties=4321"} ,
Keutamaan parameter baris arahan adalah lebih tinggi daripada fail konfigurasi, jadi apabila kedua-dua wujud bersama, parameter baris arahan diutamakan
@SpringBootTest(args = {"--test.properties=4321"},properties = {"test.properties=1234"})
Ujian ini Atribut yang ditetapkan oleh kelas hanya sah untuk ujian semasa dan mempunyai sedikit kesan
package com.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration//说明当前为配置类 public class TestBean { @Bean//创建bean public String mess(){ return "this bean run "; } }
Di bawah kelas ujian, gunakan anotasi @Import untuk memuatkan konfigurasi ujian semasa
package com.test; import com.config.TestBean; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Import; @SpringBootTest @Import({TestBean.class}) public class TestBeanNow { @Autowired//注入bean对象 public String mess; @Test public void test(){ System.out.println(mess); } }
Secara amnya, pelayan tidak akan dimulakan apabila berjalan dalam kelas ujian, seperti yang ditunjukkan di bawah. Kesemuanya menunjukkan maklumat tentang kejayaan atau kegagalan operasi
Mari Ctrl+b dan klik ke dalam kod sumber @SpringBootTest untuk melihat, ada satu tentang web
Nilai lalai ialah MOCK, mock: menyediakan persekitaran web simulasi secara lalai dan tidak akan memulakan pelayan terbenam
Yang pertama dimulakan dengan port yang dinyatakan dalam fail konfigurasi anda Jika tidak, ia akan bermula dengan 8080 secara lalai
Mock kedua: menyediakan web simulasi. persekitaran secara lalai dan tidak akan memulakan pelayan terbenam
Yang ketiga bukan untuk memulakan pelayan
Yang keempat adalah untuk memulakan port rawak
Kami menguji. permulaan port rawak
package com; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class WebTest { @Test public void test(){ } }
Jalankannya dua kali untuk melihat hasil port, semuanya rawak
Atas ialah kandungan terperinci Cara SpringBoot menguji sifat konfigurasi dan persekitaran permulaan web. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!