問題タブ [android-espresso]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
11 に答える
17583 参照

android - Google Espresso java.lang.RuntimeException: インテントを起動できませんでした { act=android.intent.action.MAIN

Espresso UI テストは初めてです。

テストの実行中にこのエラーが発生します (ADT Eclipse IDE )。

アプリはすでに開発されており、アプリの起動中に多くのリクエストが発生しています。アプリを書き換えることはできません。しかし、コンポーネントの読み込みに遅延がある場合でも、この UI をテストする方法を見つける必要があります。

  1. 「Core」という名前のライブラリ プロジェクトが 1 つあります。これは .apk を生成しません。
  2. また、「コア」にアクセスする「AA」と呼ばれる Android プロジェクトが 1 つあります。- これはAA.apkです
  3. 「UItest」というテスト プロジェクトを作成しました。

マニフェスト:

私のテスト:

0 投票する
1 に答える
523 参照

android - Expresso を使用すると、Android 自動テストのパフォーマンスが向上しますか?

Android の自動テスト フレームワークを調べていたところ、Espresso にたどり着きました。信頼性の高いテスト、最小限のボイラープレート コード、パフォーマンスの向上など、私が望んでいたすべてが揃っているように見えました。

Espresso のデモを行っている GTAC 2013 のプレゼンテーションを見て、テストの実行速度を見て非常に興奮しました。ただし、実際にいくつかのテストを実装したので、標準の Android テスト フレームワークを使用した場合よりもパフォーマンスが向上したとしても、あまり気付かないと言わざるを得ません。「公式の」ベンチマークは行っていませんが、Espresso が標準の Android テスト フレームワークを吹き飛ばしたことは理解しています。

私がテストしているプロジェクトは、developer.android.com のチュートリアルで説明されているものです。私が書いているテストは非常に単純です。

Espresso Web サイトのすべての指示に従いましたが、実行構成で GoogleInstrumentationTestRunner を使用していることに特に細心の注意を払いました。

それで、私は何が欠けていますか?簡単なことを見逃したのですか?それとも、パフォーマンスが大幅に向上したという私の前提は完全に間違っていますか?

0 投票する
14 に答える
76454 参照

android - エスプレッソ: Thread.sleep( )

エスプレッソは必要ないと主張していThread.sleep()ますが、コードを含めないと機能しません。IP に接続していますが、接続中に進行状況ダイアログが表示されます。Thread.sleep()ダイアログが閉じるのを待つための呼び出しが必要です。これは私が使用するテストコードです:

Thread.sleep()呼び出しなしでこのコードを試しましたがR.id.Button、存在しないと表示されます。私がそれを機能させる唯一の方法は、Thread.sleep()呼び出しを使用することです。

Thread.sleep()また、のようなものに置き換えてみましたがgetInstrumentation().waitForIdleSync()、まだ運がありません。

これがこれを行う唯一の方法ですか?または、何か不足していますか?

前もって感謝します。

0 投票する
2 に答える
1304 参照

android - スプーン & エスプレッソ - ビルド成功。それでおしまい?

EspressoテストをSpoonで実行します。多くの場合、build successfulテストが実行されていない状態で が表示されます。問題のアプリのコードに変更がなかったことが原因だと思います。彼らがこれを行う理由がわかります-同じテストを実行して合格したばかりのアプリをテストするのはなぜですか? しかし、私の状況は異なります。アプリをテストすることは私の主な関心事ではありませんが、アプリが制御するものをテストします。

私の質問:私のテストは連続ループで実行され、アプリは変更または変更されません。それで、これを回避する方法はありますか?

0 投票する
3 に答える
8955 参照

android - ListView に特定の数の項目があるかどうかを確認し、Espresso で最後の項目までスクロールします

Google の Espressoを使用してこれを実装しようとしていますが、何も見つからないViewAssertionViewAction、これを実行できるようになります。

これらがバンドルされたマッチャーを使用して実行できるかどうか、または独自に作成する必要があるかどうかはわかりません。

ありがとう!

0 投票する
2 に答える
183 参照

android - 自動テストの自動化

つまり、テスト ライティング自体を自動化するということです。テスターはいくつかのアクションを実行でき、それらは記録され、テストを作成するためのベースとして使用できます。既存のソリューションを見つけることができませんでした。実装するのは難しいですか? それとも私は何かを逃しましたか?

つまり、すべてのタッチ/キーイベントをログに記録し、たとえばhttps://github.com/square/javawriterを使用してテストを作成するのと同じくらい簡単かもしれません

UPD: 標準的なテスト アプローチを知っていることを言及する必要がありました。

  • UiAutomator
  • ロボエレクトリック
  • エスプレッソ (android-test-kit)

しかし、それは私が意図したものではありませんでした。手作業でテストを書くのは面倒で、このプロセスを単純化できるかどうか迷っています。

UPD1: 誰かがこの質問につまずいた場合、これが私が言いたかったことです。フリーではないので、フリー/オープンソースのアナログを喜んでチェックしたいと思います。

0 投票する
2 に答える
1345 参照

android - Espresso は NineOldAndroids アニメーションで動作しませんか?

Espresso で NineOldAndroids lib に基づいてアニメーションを繰り返すアクティビティ (HomeActivity) をテストしようとしています。こちらで説明されているようにシステム アニメーションをオフにしましたが、効果がなく、エラーが発生します (以下を参照)。アニメーションを手動で削除することだけが役に立ちます。質問は、アニメーションを手動でオフにする必要があるか (BuildConfig を使用すると手間がかからないように見える)、それとも何か間違っているのでしょうか? 前もって感謝します!