タグ付けされた質問 「android-espresso」

5
Kotlinと新しいActivityTestRule:@Ruleは公開する必要があります
KotlinでAndroidアプリのUIテストを実行しようとしています。新しいシステムはActivityTestRuleを使用しているため、機能させることができません。正しくコンパイルされ、実行時に次のようになります。 java.lang.Exception: The @Rule 'mActivityRule' must be public. at org.junit.internal.runners.rules.RuleFieldValidator.addError(RuleFieldValidator.java:90) at org.junit.internal.runners.rules.RuleFieldValidator.validatePublic(RuleFieldValidator.java:67) at org.junit.internal.runners.rules.RuleFieldValidator.validateField(RuleFieldValidator.java:55) at org.junit.internal.runners.rules.RuleFieldValidator.validate(RuleFieldValidator.java:50) at org.junit.runners.BlockJUnit4ClassRunner.validateFields(BlockJUnit4ClassRunner.java:170) at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:103) at org.junit.runners.ParentRunner.validate(ParentRunner.java:344) at org.junit.runners.ParentRunner.<init>(ParentRunner.java:74) at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:55) at android.support.test.internal.runner.junit4.AndroidJUnit4ClassRunner.<init>(AndroidJUnit4ClassRunner.java:38) at android.support.test.runner.AndroidJUnit4.<init>(AndroidJUnit4.java:36) at java.lang.reflect.Constructor.constructNative(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:417) at android.support.test.internal.runner.junit4.AndroidAnnotatedBuilder.buildAndroidRunner(AndroidAnnotatedBuilder.java:57) at android.support.test.internal.runner.junit4.AndroidAnnotatedBuilder.runnerForClass(AndroidAnnotatedBuilder.java:45) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57) at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:29) at org.junit.runner.Computer.getRunner(Computer.java:38) at org.junit.runner.Computer$1.runnerForClass(Computer.java:29) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57) at …

9
依存関係「com.android.support:support-annotations」と競合しています。アプリ(23.1.0)とテストアプリ(23.0.1)の解決済みバージョンが異なる
ビルドすると、次のエラーが発生します。 Conflict with dependency 'com.android.support:support-annotations'. Resolved versions for app (23.1.0) and test app (23.0.1) differ. これらは私のgradleの依存関係です dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') compile 'com.android.support:support-v4:23.1.0' compile 'com.android.support:appcompat-v7:23.1.0' compile 'com.android.support:design:23.1.0' compile 'com.android.support:cardview-v7:23.1.0' compile 'com.android.support:recyclerview-v7:23.1.0' compile 'com.squareup.retrofit:retrofit:1.9.0' compile 'com.squareup.okhttp:okhttp:2.4.0' compile 'com.squareup.picasso:picasso:2.5.2' compile 'com.jakewharton:butterknife:7.0.1' compile 'com.squareup:otto:1.3.8' compile 'com.snappydb:snappydb-lib:0.5.2' compile 'com.esotericsoftware.kryo:kryo:2.24.0' compile 'com.google.dagger:dagger:2.0.1' apt …

2
Google EspressoまたはRobotium [終了]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 6年前休業。 この質問を改善する Automated UIテストツールを使用する必要があり、RobotiumとGoogle Espressoの使用を混同しています。 2つの主な違いは何ですか?一方には存在するが他方には存在しない機能はありますか?

13
エスプレッソ:Thread.sleep();
Espressoはの必要はないと主張しThread.sleep();ていますが、コードを含めないと私のコードは機能しません。IPに接続しています。接続中、進捗ダイアログが表示されます。sleepダイアログが消えるのを待つ必要があります。これは私が使用する私のテストスニペットです: IP.enterIP(); // fills out an IP dialog (this is done with espresso) //progress dialog is now shown Thread.sleep(1500); onView(withId(R.id.button).perform(click()); 私はこのコードを使用して、または使用せずに試しましたThread.sleep();が、R.id.Button存在しないと表示されています。私がそれを働かせる唯一の方法は睡眠です。 また、私はのThread.sleep();ようなもので置き換えてみましたがgetInstrumentation().waitForIdleSync();、まだ運がありません。 これがこれを行う唯一の方法ですか?それとも何か不足していますか? 前もって感謝します。

9
Espressoを使用してRecyclerViewアイテム内のビューをクリックする
Espressoを使用してRecyclerViewアイテム内の特定のビューをクリックするにはどうすればよいですか?次を使用して、位置0の項目をクリックできることを知っています。 onView(withId(R.id.recyclerView)) .perform(RecyclerViewActions.actionOnItemAtPosition(0, click())); しかし、アイテム自体ではなく、そのアイテム内の特定のビューをクリックする必要があります。 前もって感謝します。 -編集- より正確に言うと、私はRecyclerView(R.id.recycler_view)を持ち、どのアイテムがCardView(R.id.card_view)であるかを示しています。各CardViewの内部には4つのボタンがあり(特に)、特定のボタン(R.id.bt_deliver)をクリックします。 Espresso 2.0の新機能を使用したいのですが、それが可能かどうかはわかりません。 それが不可能な場合は、次のようなものを使用します(Thomas Kellerコードを使用)。 onRecyclerItemView(R.id.card_view, ???, withId(R.id.bt_deliver)).perform(click()); しかし、疑問符に何を付けるかわかりません。

3
Androidの@ SmallTest、@ MediumTest、@ LargeTestアノテーションの目的は何ですか?
私はAndroidを使い始めたばかりで、これらのアノテーションを使用したコード例を見てきました。例えば: @SmallTest public void testStuff() { TouchUtils.tapView(this, anEditTextView); sendKeys("H E L P SPACE M E PERIOD"); assertEquals("help me.", anEditTextView.getText().toString()); } その注釈は何を達成しますか?

6
Espressoでダイアログが表示されるかどうかを確認します
新しいandroid-test-kit(Espresso)を使用していくつかのテストを作成しようとしています。しかし、ダイアログが表示されているかどうかを確認し、ダイアログに対していくつかのアクション(正ボタンと負ボタンをクリックするなど)を実行する方法についての情報が見つかりません。ダイアログはWebView、アプリケーション自体ではなく、によっても表示される場合があることに注意してください。 どんな助けでもいただければ幸いです。リンク、または基本的なサンプルコードが必要です。 ダイアログが表示されるかどうかを確認します ダイアログボタンのクリックを実行します ダイアログの内部ビューを操作します(カスタムビューの場合) ダイアログの外側でプリフォームがクリックされ、表示されているかどうかを確認します(たとえばsetCancelable(false)、ダイアログビルダーで呼び出され、それを確認したい場合)。 アドバイスありがとうございます!

5
matchs(not(isDisplayed()))はNoMatchingViewExceptionで失敗します
UIビューがないことをテストしようとしています。ビューセレクターは次のとおりです。 public static ViewInteraction onMyTestUi() { return onView(withId(R.id.myTestId)); } セレクターはビューが表示されているかどうかを確認するために正常に機能しますが、ビューが表示されていないかどうかを確認するとエラーが発生します。私はこれを次のように使用しています: onMyTestUi().check(matches(not(isDisplayed()))); しかし、次のエラーが発生します。 com.google.android.apps.common.testing.ui.espresso.NoMatchingViewException:一致する階層内のビューが見つかりません:with id:isターゲットビューがビュー階層の一部でない場合は、Espresso.onDataを使用して次のAdapterViewsのいずれかからロードします:android.widget.ListView {...} 変ですね。UIがないことを確認していますが、このビューが見つからないことが予想されます。では、なぜEspressoがエラーをスローしているのでしょうか。ここで何がうまくいかないのか提案してください。 ありがとう、びっくり!
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.