groovy
androidTestImplementation "com.squareup.assertj:assertj-android:1.2.0"
@RunWith(AndroidJUnit4.class)
public class MyActivityTest {
@Rule
public ActivityTestRule<MyActivity> mActivityRule = new ActivityTestRule<>(MyActivity.class);
@Before
public void setUp() {
}
@Test
public void testButtonVisibility() {
onView(withId(R.id.button)).isVisible();
}
@Test
public void testEditTextContent() {
onView(withId(R.id.editText)).hasText("Hello");
}
}
public class CustomAssertions {
public static ViewAssertion hasChildrenCount(final int count) {
return (view, noViewFoundException) -> {
assertThat(view).isNotNull();
assertThat(view).isInstanceOf(ViewGroup.class);
assertThat(((ViewGroup) view).getChildCount()).isEqualTo(count);
};
}
}
@Test
public void testCustomAssertion() {
onView(withId(R.id.viewGroup)).check(CustomAssertions.hasChildrenCount(3));
}