使用Espresso进行UI测试
1 package com.example.lenovo.uitest; 2 3 import android.support.test.rule.ActivityTestRule; 4 import android.support.test.runner.AndroidJUnit4; 5 import android.test.suitebuilder.annotation.LargeTest; 6 7 import org.junit.Rule; 8 import org.junit.Test; 9 import org.junit.runner.RunWith; 10 11 import static android.support.test.espresso.Espresso.onView; 12 import static android.support.test.espresso.action.ViewActions.click; 13 import static android.support.test.espresso.action.ViewActions.closeSoftKeyboard; 14 import static android.support.test.espresso.action.ViewActions.typeText; 15 import static android.support.test.espresso.assertion.ViewAssertions.matches; 16 import static android.support.test.espresso.matcher.ViewMatchers.withId; 17 import static android.support.test.espresso.matcher.ViewMatchers.withText; 18 19 20 @RunWith(AndroidJUnit4.class) 21 @LargeTest 22 public class MainActivityInstrumentedTest { 23 private static final String STRING_To_Be_TYPED = "Jason"; 24 @Rule 25 public ActivityTestRule<MainActivity> mainActivityTestRule = new ActivityTestRule<MainActivity>(MainActivity.class); 26 27 @Test 28 public void sayhello() { 29 onView(withId(R.id.editText)).perform(typeText(STRING_To_Be_TYPED), closeSoftKeyboard()); 30 onView(withText("say hello")).perform(click()); 31 String expectedText = "Hello," + STRING_To_Be_TYPED + "!"; 32 onView(withId(R.id.textView)).check(matches(withText(expectedText))); 33 34 } 35 }
点击测试类右击选择运行,若测试通过,出现: