Android Gradle PluginでJaCoCoを使ったカバレッジ計測を試したが
java.lang.VerifyErrorが発生したというエントリを書いた。
どうやらこの影響が及ぶのはリフレクションだけではないらしく、
通常のIntent
による起動が失敗した。
以下のようなパターンで、testCoverageEnabled = true
となった
ビルドでインストールしたアプリがjava.lang.VerifyError
によりクラッシュした。
まずAndroidManifest.xml。
途中は省略するが、トップ画面からメニューを開き
「About」の項目をタップするとAboutActivity
が開き
アプリの概要が表示される、というもの。
<application
:
<activity
android:name=".AboutActivity"
android:label="@string/title_activity_about" />
</application>
トップ画面のMainActivity
では以下のように書いている。
@Override
public boolean onOptionsItemSelected(final MenuItem menu) {
int id = menu.getItemId();
if (id == R.id.menu_about) {
startActivity(new Intent(getApplicationContext(),
AboutActivity.class));
return true;
}
return false;
}
これが、通常のビルドなら問題なかったが上記の通り
カバレッジ計測を有効にしたら失敗した。
(自動テストでなく手動で動かしても同様)
実際のプロジェクトで利用するにはまだ問題がありそうだ。。。
0 件のコメント:
コメントを投稿