JUnitで単体テストを行っていたところ、前日まで正常に動いてたメソッドで急にinitializationErrorが出てしまいました。
以下、経緯と解決策の覚書きです。
発生事象
Eclipseを使用し、JUnitテストを実行したところ、一部のテストメソッドでinitializationErrorが発生。
前日までは正常に動作していた。
環境
- Java:バージョン1.8.0
- Junit:バージョン4.12.0
- OS:Windows10
経緯と調査
追加開発内容のカバレッジに漏れがないか確認するため、
開発前のコミットに戻して、テストを実施。
その後、最新のコミットに変更してテストを実施したところ、上記キャプチャのようなinitializationErrorが発生。
・・開発期限まで間もなかったため、頭が真っ白になりました。
調べたところ、@Testをつけたメソッドをテストメソッド内で呼び出すと起きるらしいのですが、
今回はそのような箇所はなし。
参考:JUnitでInitializationErrorが出てハマった話 | 個人でもいいんじゃない? 常駐フリーランスSEのための備忘録
原因と解決策
いろいろ確認した結果、initializationErrorは新規追加したテストメソッドのみで起きていることがわかりました。
ということは・・で、無事原因にたどり着きました。
その原因とは、、
開発前のコミット→最新のコミットに戻した後にビルド・デプロイしていなかったこと。
いわゆる凡ミスですね。。
その後、ビルド・デプロイ実施で、無事解決しました。
教訓
ブランチを変えたり、コミットをリセットした場合は、ビルド・デプロイを忘れずに。