Pocket

androidのライブラリを呼んでいるメソッドをテストするために、ApplicationTestCaseを使っていました。

ところが、targetSdkVersion=28にして、サポートライブラリをandroidXへ移行したら、ApplicationTestCaseが使えなくなっていました。これらは、APIレベル24 android 7で、非推奨になっていたんですね。

新規作成したプロジェクトのExampleInstrumentedTestクラスを見ながら、いくつかのApplicationTestCaseをAndroidJUnit4に移行してみました。機械的な編集作業+手作業で調整、でいけそうでした。

次のようなシェルスクリプトを作って、機械的な編集作業をsedに置換させました。

migrate_applicationtest_androidjunit4.sh

次のように使います。作業用ブランチを新規作成してから、作業すると安心です。