障害メモ/STSでJUnitするときプロフィールのプロパティが読めてない
キーワード
- Spring Boot
- JUnit
- STS
- Eclipse
現象
STS(Eclipse)でJUnitのテストをするとき、プロフィールのプロパティが読めない。
次を試したがだめだった。
| 項目 | 設定内容 |
|---|---|
| Program arguments | –spring.profiles.active=dev |
| Environment variables to set | (Variable,Value)=(SPRING_PROFILES_ACTIVE,dev) |
原因
EclipseのJUnit test runnerがSpring Bootのようにやってくれないから?
the JUnit runner simply doesn't parse arguments the same way that a spring boot app does.
対策
次のようにプロパティファイルを用意している場合、
| プロパティファイル | 内容 |
|---|---|
| application.yml | 環境依存の設定を除く |
| application-dev.yml | 環境依存の設定のみ |
application.ymlに環境依存の設定も合わせて記述する。
備考
Gradleからテストする場合、
export SPRING_PROFILES_ACTIVE=dev
をすれば
gradle test
できる。
参考
作成日 2017-04-20
