私はエスプレッソで意図的に起動することを検証するためのテストを作成しようとしていますが、意図は何も意図を記録していません。ボタンがない場合、エスプレッソは何も意図していません
私はこのテスト
@Test
public void shoulddosomething(){
startActivity();
intended(hasComponent(hasClassName(TemplatePictureCaptureActivity.class.getName())));
}
を持っており、私の活動では、私はこのコード
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(onRequestLayout());
Intent intent = new Intent(this, TemplatePictureCaptureActivity.class);
startActivity(intent);
}
テスト結果がこれですを持っています。
android.support.test.espresso.base.DefaultFailureHandler$AssertionFailedWithCauseError: Wanted to match 1 intents. Actually matched 0 intents.
IntentMatcher: has component: has component with: class name: is "cat.helm.recertel.ui.templatepicturecapture.TemplatePictureCaptureActivity" package name: an instance of java.lang.String short class name: an instance of java.lang.String
Matched intents:[]
Recorded intents:[]
私はonClickListen内部の意思を起動しようとした、それが働いていたが、それなしで、私はそれを動作させることはできません。私は運がないままアイドル状態のリソースを試しました。あなたはこれを達成する方法を知っていますか?
(hasComponent(hasClassName(TemplatePictureCaptureActivity.class.getName())))));); – ozo
ありがとうございました。しかし、それは悪いコードのにおいではない? – Borja
私はそうは思わない。私はビューがまだインテントをテストしている間、まだ準備が整っていないと思う、アンドロイドはまだビュー(setContentView(onRequestLayout())を設定している、それは理由を見つけることができない理由です。ボタンクリックの場合は、ビューが設定された後でクリックします。 – ozo