play2フレームワークでの単体テストは私にとってかなり難しいようです
フレームワーク独自のスタイルのため、多くのコードは静的で密結合として記述されています。
例えば、
boolean isExample = Configuration.root().getBoolean("example.flag");
....
public class Global extends GlobalSettings {
@Override
public void onStart(Application app) {
Akka.system().scheduler().schedule .....
}
}
Akka スケジューリングの開始は、GlobalSettings の具象クラスの onStarting メソッドであり、FakeApplication の開始時に起動されます。
Configuration.root() は、FakeApplication で実行せずに NPE をスローします。
すべてが静的な方法で行われ、モッキングの余地はありません。
適切なテスト分離を使用した優れたベスト プラクティスをお勧めできますか?
常に統合テストを行う必要がありますか? (DB、キャッシュ、APIなどのさまざまなものとの接続を作成します...など)