問題タブ [android-testing]

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 投票する
1 に答える
1833 参照

android - AndroidテストフレームワークperformClick()がアクティビティを開始しない

ActivityInstrumentationTestCase2Button.click()を実行するテストがあります。ボタンは、いくつかの作業を行うために他のアクティビティを開始する必要があります。Button.performClick()は正しく実行されていると思いますが、他のアクティビティが実行される前にテストが終了しています。

私はうまくいった以下を試しましたが、これは良い解決策というよりはむしろ回避策だと思います。

より良い方法はありませんか?

0 投票する
0 に答える
405 参照

javascript - JS とコンポーネント ツリーでのモンキー トーク自動化ツール エラー

アプリの自動化スクリプトを書き始めました。iOS バージョンでは Apple UIAutomation を使用し、Android バージョンでは GorillaLogic の MonkeyTalk という便利なツールを使い始めましたが、いくつか問題が発生しました...

1) componentTree ボタンを押すと、アプリが突然クラッシュします (Apple UIAutomation も使用していますが、このツールでは発生したことはありません)。

2) *.JS ファイルを実行しようとしているときに、IDE がループを認識しません。

誰の問題をどのように解決できるか知っている人はいますか?

0 投票する
0 に答える
4519 参照

android - Android 統合テスト: Robotium または UIAutomator?

Android アプリの統合テストをセットアップしたいのですが、Robotiumと最近導入されたuiautomatorのどちらが適しているのでしょうか。

以前に Robotium を使用した経験があり、このフレームワークは統合テストに最適です。しかし、最近導入された uiautomator も良さそうです。

現在、uiautomator にはいくつかの制限があります。

  • xml テスト レポートなし
  • 互換性なし (4.1 以降でのみ動作)
  • Eclipse がサポートされていないため、多くのコンソール作業が必要

一方、このツールを使用すると、テスト対象のアプリケーションのサンドボックス化を取り除くことができ、パッケージに依存しないため、複数のアプリケーションを一緒にテストできます。

また、Maven、Robotium、および Jenkins のようないくつかの CI を使用してセットアップを行うのはかなり簡単であることは知っていますが、uiautomator でそれほど簡単かどうかはわかりません。

uiautomator に他に落とし穴はありますか? それとも、今のところ Robotium を使い続ける方がよいのでしょうか?

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

android - テスト実行後にandroid junitテストをフリーズ

各テスト実行後、junit は次のテストに進みます。また、アクティビティは各テストの実行後に自動的に閉じます。

関数をテストするときは問題ありませんが、ビューをテストするときは問題ありません。junit が次のテストを実行する前に、実行結果を画面に表示したいと考えています。

だから、私はテストの間に小さな遅延を作りたい.


私がそれを行うことができる1つの方法があります:

しかし、このコードは汚れているため、この方法は好きではありません (特に、このようなテストがたくさんある場合)。


別の方法ははるかに優れているようです:

BUT: UI スレッドはブロックされますが、テスト スレッドはブロックされません。テスト スレッドをブロックする必要があります。

Thread.sleep(3000);テストスレッドでこのコードから個別に実行する方法はありますか?


では、テスト間でスレッドを遅延させる最良の方法は何でしょうか?

ps追加のテストフレームワークをお勧めしないでください。埋め込みツールを使用して問題を解決したいのです。ありがとうございました。

0 投票する
5 に答える
4176 参照

android - Robotium 実行時の FragmentActivity クラスの java.lang.NoClassDefFoundError

考えられることはすべて試しましたが、それでも Robotium を使用してテストを実行できません。

ここで提案されているように、ロボティウムライブラリとメインプロジェクトをプロジェクト構成でエクスポートするように設定しました

ここで提案されているようにandroid:debuggableフラグを設定しましたtrue

ここでandroid:targetPackage提案されているように、マニフェストで適切に設定されていることも確認しました

また、テストモジュールをビルドするときに、メインプロジェクトの依存関係のスコープを変更しようとしましたProvided(それが何をするのCompileかわかりません...)

Test プロジェクトの AndroidManifest は次のとおりです。

そして、ここに私が得る例外があります:

logcat に次のようなエラーがいくつか表示されることにも注意してください。

違いがある場合は、IntelliJ Idea (11.1.5)、SDK 17、SDK Tools 21.0.1 を使用し、Robotium を 3.6 に更新しています。

更新

ここで関連する議論が 1 つ見つかりました。テストを 1 つだけ実行するか、すべてのテストを実行するかにかかわらず、さまざまなエラー メッセージが表示されます。私のアプリケーションは FragmentActivity を使用しています。しかし、私が何をしても、テストを実行することはできません (1 つではなく、すべてではありません)...

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

android - MockContext を使用する場合の新しい Android バージョンの ApplicationTestCase.createApplication() での AssertionFailedError

Android ApplicationTestCase を作成しています ( Diego T. Milano によるAndroid アプリケーション テスト ガイドの 171 ページにある TemperatureConverterApplicationTests の例)。この例は Android 2.3 用に作成されたもので、Android 4 では機能しないようです。単純化したので、問題を理解するためにこの本を知っている必要はありません。

これはAndroid 2.3.3 (API 10)で正常に動作します。

[正確には、getPackageName() が実装されていないため、UnsupportedOperationException がスローされます。しかし、これは正常なことであり、getPackageName() と getSharedPreferences() を実装する MockContext() のサブクラスを使用することで解決できます。これを行った後でも問題がまだ存在するため、これは関係ありません。]

問題は、Android 4.1.2 (API 16) では機能しないことです。ApplicationTestCase の 100 行目で ClassCastException がスローされたことが原因であることが、デバッグによって判明した AssertionFailedError を受け取りました。

ClassCastExceptionメッセージは次のとおりです。

なぜこれが起こるのか、どうすれば回避できるのか、何か提案はありますか?

編集: 関連する質問: MockContext を使用した Android ApplicationTestCase

0 投票する
0 に答える
500 参照

android - Androidでdbmanagerクラスをテストするには?

私のAndroidアプリでは、ormliteを使用しています。ここで、db ヘルパー メソッドのテストケースをいくつか作成したいと思います。これがどのように適切に機能するのかわかりません。具体的なテストを開始する前に、テストケースでデータベースを作成する必要があります。たとえば、ユーザーが期待どおりに作成されるかどうかをテストしたいとします。このために、テストする必要があるaddUserメソッドがありますが、どうすればこれを行うことができますか?

現在、DBManager-Class の TestCase を使用して TestProject を作成しました。

これが私のDBHelperクラスです

}

そして、テストしたいDBManager、たとえばstoreUser Method

そして私のTestClass

最初のテストが実行されたら、他のテストは明確になるはずです。ありがとう

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

android - アクティビティで引数を受け取る方法は、ActivityInstrumentationTestCase2 で拡張されます

指示 :

今、

「 ActivityInstrumentationTestCase2 」を使用しています。

setup() で次のコードを試しましたが、うまくいきません。

常に「パラメーターがありません???」と表示されます。

事前にご協力いただきありがとうございます... :-)

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

android - Android アプリの自動化テスト ツール

私は自分の Android アプリケーションで自動化テストを行い、ロボティウムフレームワークを使用しました。それでも、他の自動化ツールを手に入れたいと思っています。それで、誰かがAndroidアプリケーション用の他の無料の利用可能な自動化ツールを提案できますか?そしてどれが最良のツールですか??