2016-11-15 5 views
1

エスプレッソのテストで "for loop"が正しく実装されているかどうかはわかりません。 ExpandableListViewですべての親の最初の子をテストしたい 潜在的なコード:Androidのテスト:エスプレッソのテストで "for Loop"が正しく実装されていますか?

for(i = 0; i < length; i++){ 
onData(anything()) 
    .inAdapterView(withId(R.id.userProfileActivityList)) 
    .atPosition(i) 
    .check(matches(isDisplayed())) 
    .perform(click()) 
    .check(matches(hasDescendant(isDisplayed()))); 
} 

ありがとうございます。

+0

一般的なテストの経験則は、メソッドごとに1つのアサートです。アレイを作成し、別の値のセットに対して同じものを検証したい場合は、問題ありません。あなたは正確にそれをテストしようとしていますか? – sumandas

+0

こんにちは、返信ありがとうございます。実際には、各ユニフォームの親がクリック可能で表示されていることをテストしたいと思います。 –

答えて

1

もちろん、どうしてですか?これには2つの考えがあります。

A:あなたがやった罰金、良いスタイル、少ないコードの再利用など

Bでの結果である:私は時々、結果の明確化のために、テストケースのコードの冗長性を好みます。私のテストケースが失敗したとき、なぜ失敗したのかを正確に知りたいので、すぐに自分のコードに戻って修正することができます。これはまた、「1つの方法につき1つのアサート」概念の動機でもある。

考えてみましょう:このテストケースが失敗すると、開発者を明快かつ容易に適切な機能に導く方法で失敗するでしょうか?

この質問に対する回答が「はい」の場合、他に重要なことは何ですか?確かに、これはたくさんのことを網羅しています!テストケースで一般的に優れたコーディングスタイルを維持し、確実なメッセージで良好なアサーションを作成し、確実なスタックトレースを提供するためのアサーションを確保します。

+0

ありがとう、それは良い点です。私は、テストが失敗した場合、そしてその問題を解決するための結果について何も考えなかった。どのように/どの機能が正確に失敗したのかわかりましたか?両親、子供?私はこのループを再考する) –

関連する問題