ホームページ >Java >&#&チュートリアル >SpringBoot が構成プロパティと Web 起動環境をテストする方法
@SpringBootTest ソース コードをクリックして表示します
一時的な構成を後で追加することも、次のコマンドを使用することもできますline args パラメータの設定。設定されたテスト固有のパラメーターは、構成ファイル内のパラメーターをオーバーライドします。
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); } }
コマンド ライン パラメーターを使用することもできます
args = {"--test.properties=4321"} ,
コマンド ライン パラメーターの優先順位は構成ファイルの優先順位よりも高いため、2 つが共存する場合はコマンド ライン パラメーターが優先されます
@SpringBootTest(args = {"--test.properties=4321"},properties = {"test.properties=1234"})# #このテスト クラスによって設定された属性は現在のテストでのみ有効であり、影響はほとんどありませんテストには外部 Bean を使用します
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 "; } }
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); } }実行結果 スピード テスト クラスが Web 環境を開始します 通常、サーバーは以下に示すように、テストクラスでの実行時に開始されます。これらはすべて、操作の成功または失敗に関する情報を表示します Ctrl b を押しながら @SpringBootTest ソース コードをクリックして表示します。Web に関する質問があります
デフォルト値は MOCK です。モック: デフォルトでシミュレートされた Web 環境を提供し、組み込みサーバーは起動しません私たちはテスト クラスにいます
最初のモックは、構成ファイルで指定されたポートで開始されます。そうでない場合は、デフォルトで 8080 で開始されます。2 番目のモック: シミュレートされたポートを提供します。デフォルトでは Web 環境であり、組み込みサーバーは起動しません3 番目はサーバーを起動しません4 番目はランダム ポートを起動しますランダム ポートをテストしますstartup
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(){ } }実行結果2 回実行してポートの結果を確認します。結果はすべてランダムです
以上がSpringBoot が構成プロパティと Web 起動環境をテストする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。