Skip to content

ryan5500/spring-boot-and-testcontainers-on-devcontainer-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

spring-boot-and-testcontainers-on-devcontainer-example

これは何?

Visual Studio Code Dev Container上でSpring BootとTestcontainersを動かすサンプルコードです。 Nstockのtech blogの記事用に作成しました。

検証環境

  • M1 Mac & macOS Monterey
  • Visual Studio Code version: 1.78.2
  • Docker Desktop version: 4.19.0

実行方法

mvn test

解説

  • src/test/java/com/example/demo/AbstractIntegrationTest.java

    • テストを実装するクラスのベースクラス。
    • ここでTestcontainersでコンテナを起動する。
    • また DynamicPropertySourceを利用して、Spring BootのDB接続設定をTestcontainersで起動したコンテナに向けている。
  • src/test/java/com/example/demo/DemoApplicationTests.java

    • Testcontainersを利用したテスト実装。
    • AbstractIntegrationTestクラスを継承することでTestcontainersを利用する。
    • @sqlアノテーションで、起動時にschema.sqlとtest-data.sqlをTestcontainersで起動したDBにロードする。
    • テストしているのは、Testcontainersで起動したDBの中に、読みこんだデータがあるか。
  • .devcontainer/docker-compose.yml

    • VSCode Dev Container上でTestcontainersを利用するために複数設定を追加している。
    • app serviceに対して以下を追加
      • volumes に、/var/run/docker.sock をマウントする設定を追加
      • extra_hostshost.docker.internal:host-gateway を追加
      • environmentTESTCONTAINERS_HOST_OVERRIDE=host.docker.internal を追加

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published