UI Test Espresso - abdulmukit98/techshopJU GitHub Wiki

Gradle implementation

androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
androidTestImplementation 'androidx.test:runner:1.4.0'
androidTestImplementation 'androidx.test:rules:1.4.0'
androidTestImplementation 'androidx.test:core:1.4.0'

create out test class

  • in mainActivity generate test class using JUnit4 and in Android Test package a

Test function

  • ActivityScenario is used for launch the activity that is going tobe tested
  • onView() is used to check if a view is shown when the activity launch
    @Test
    public void test_MainActivity_isViewed()
    {
        ActivityScenario<MainActivity> scenario = ActivityScenario.launch(MainActivity.class);
        onView(withId(R.id.mainLayout)).check(matches(isDisplayed()));
    }

    @Test
    public void dimension_height_is_shown()
    {
        ActivityScenario<MainActivity> scenario = ActivityScenario.launch(MainActivity.class);
        onView(withId(R.id.edtHeight)).check(matches(isDisplayed()));
    }

Test case for checking string

    @Test
    public void is_orderPCB_textView_matches_givenString()
    {
        ActivityScenario<MainActivity> scenario = ActivityScenario.launch(MainActivity.class);
        onView(withId(R.id.tvTitle)).check(matches(withText("Order PCB")));
    }

Test case for checking inputType

    @Test
    public void test_isEditText_width_inputType_number()
    {
        ActivityScenario<MainActivity> scenario = ActivityScenario.launch(MainActivity.class);
        onView(withId(R.id.edtHeight)).check(matches(withInputType(TYPE_CLASS_NUMBER)));
    }

For Details Follow (https://www.youtube.com/watch?v=zJuFYqnBcgQ)