/var/log/messages

debugging with sixth sense

画面遷移の試験

ListView で云々、というあたり。なんかよく分かってないのですが項目クリックで画面遷移な試験を以下のように書いてパスしてることを確認してます。

public void testHogeSelected() {
    onData(allOf(is(instanceOf(HogeFragment.ListItem.class)),
            hasToString(equalTo("Hoge"))))
            .perform(click());
    onView(withText("Fuga")).check(matches(isDisplayed()));
}

ええと、ListView は ArrayAdapter を継承したアダプタを使って表示されてます。一行に色々な文字列が表示されている、とご理解ください。

このクラスですが以下な修正をしてます。

  • public にした (テストなパケジから可視な状態)
  • toString 実装してタイトルな文字列を戻すようにした

onData で ListItem 型のインスタンスでかつ、toString の戻りが Hoge な項目をクリックして Fuga なテキストがある View が Displayed であること、という assert になっているのかどうか。

org.hamcrest 云々はあまり触ったことがなかったので最初びっくりでしたが、なんとなく慣れたのかどうなのか。

とりあえず

この状態で commit 作ってしまうのですが、volley 使った通信してて mock 作らなきゃいけない模様。ここは別途、ということにさせて下さい。

も少し

これ元手に CI なサーバで動作するかどうかを確認したいですがいつになるやら。

Comments