2016-05-11 2 views
-1

私はAndroidプロジェクトに単体テスト(junit 4.12)を組み込み始めました。Androidスタジオ計測のテスト:プライベートビューが親に追加されたかどうかを確認

私が遭遇したシナリオの1つは、ビューが正しく追加されたかどうかを判断することです。私ViewToTestクラスで例えば

private TextView _text; 

/** 
* Shows all text. 
*/ 
public void showText() 
{ 
    addView(_text); 
} 

/** 
* Hides all text. 
*/ 
public void hideAllText() 
{ 
    removeView(_text); 
} 

私は私が行動ではない方法をテストすることになったが、この場合には、行動が法である(または私を修正していますユニットテストを理解して何から、私が間違っている場合)。

私の質問は2部です:私は_textが親ビューに追加されたことをテストするにはどうすればよい

  1. ビューがプライベートである場合、上記のシナリオをどのように処理できますか?

パート2では、ビューのゲッターを作成することはできますが、ポイントを破るのは私には分かります。私はテストのためにそれを追加するだけです!

アドバイスありがとうございます!

答えて

0

Androidアプリのテストに関する重要な概念を説明しているdocumentがあります。しかし、基本的にあなたが使用する必要があることを示しています

ユニットはAndroidのフレームワーク依存関係を持っていないか、モックオブジェクトを満たすことができるの依存関係を持っているユニットテストを実行するために

使用このアプローチをテストします。

の統合は、あなたのアプリ内

コンポーネントをテスト:テストのこのタイプは、ユーザーが特定のアクションを実行するか、その活動に特定の入力を入力したときに期待されるように、ターゲットアプリが動作することを確認します。たとえば、アプリのアクティビティでのユーザーの操作に応じて、ターゲットアプリが正しいUI出力を返すかどうかを確認できます。 EspressoなどのUIテストフレームワークを使用すると、プログラムでユーザーの動作をシミュレートし、複雑なアプリ内ユーザーの操作をテストできます。

クロスアプリコンポーネント:このタイプのテストでは、さまざまなユーザーアプリ間またはユーザーアプリとシステムアプリ間のやり取りの正しい動作を確認します。たとえば、ユーザーがAndroidの[設定]メニューで操作を実行したときに、アプリが正しく動作することをテストすることができます。 UI Automatorなど、アプリケーション間のやりとりをサポートするUIテストフレームワークでは、このようなシナリオのテストを作成できます。

あなたのテストタイプには、エスプレッソのフレームワークがより便利です。使い方はとても簡単です。ここでは、単一のアプリケーションでUIをテストする方法のlessonがあります。

関連する問題