SplashActivityTest.java 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package org.easydarwin.device;
  2. import android.support.test.espresso.ViewInteraction;
  3. import android.support.test.rule.ActivityTestRule;
  4. import android.support.test.runner.AndroidJUnit4;
  5. import android.test.suitebuilder.annotation.LargeTest;
  6. import com.easygbs.device.SplashActivity;
  7. import org.junit.Rule;
  8. import org.junit.Test;
  9. import org.junit.runner.RunWith;
  10. import static android.support.test.espresso.Espresso.onView;
  11. import static android.support.test.espresso.Espresso.pressBack;
  12. import static android.support.test.espresso.action.ViewActions.click;
  13. import static android.support.test.espresso.action.ViewActions.scrollTo;
  14. import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
  15. import static android.support.test.espresso.matcher.ViewMatchers.withId;
  16. import static android.support.test.espresso.matcher.ViewMatchers.withParent;
  17. import static android.support.test.espresso.matcher.ViewMatchers.withText;
  18. import static org.hamcrest.Matchers.allOf;
  19. @LargeTest
  20. @RunWith(AndroidJUnit4.class)
  21. public class SplashActivityTest {
  22. @Rule
  23. public ActivityTestRule<SplashActivity> mActivityTestRule = new ActivityTestRule<>(SplashActivity.class);
  24. @Test
  25. public void splashActivityTest() {
  26. // Added a sleep statement to match the app's execution delay.
  27. // The recommended way to handle such scenarios is to use Espresso idling resources:
  28. // https://google.github.io/android-testing-support-library/docs/espresso/idling-resource/index.html
  29. ViewInteraction appCompatButton = onView(
  30. allOf(withId(R.id.btn_switch), withText("推送"), isDisplayed()));
  31. appCompatButton.perform(click());
  32. ViewInteraction appCompatButton2 = onView(
  33. allOf(withId(R.id.btn_setting), withText("设置"), isDisplayed()));
  34. appCompatButton2.perform(click());
  35. pressBack();
  36. ViewInteraction appCompatCheckBox = onView(
  37. allOf(withId(R.id.only_push_audio), withText("仅推送音频")));
  38. appCompatCheckBox.perform(scrollTo(), click());
  39. ViewInteraction appCompatButton3 = onView(
  40. allOf(withId(R.id.btn_save), withText("保存")));
  41. appCompatButton3.perform(scrollTo(), click());
  42. ViewInteraction appCompatButton4 = onView(
  43. allOf(withId(R.id.btn_setting), withText("设置"), isDisplayed()));
  44. appCompatButton4.perform(click());
  45. pressBack();
  46. ViewInteraction appCompatCheckBox2 = onView(
  47. allOf(withId(R.id.only_push_audio), withText("仅推送音频")));
  48. appCompatCheckBox2.perform(scrollTo(), click());
  49. ViewInteraction appCompatButton5 = onView(
  50. allOf(withId(R.id.btn_save), withText("保存")));
  51. appCompatButton5.perform(scrollTo(), click());
  52. pressBack();
  53. ViewInteraction appCompatButton6 = onView(
  54. allOf(withId(android.R.id.button2), withText("取消"),
  55. withParent(allOf(withId(R.id.buttonPanel),
  56. withParent(withId(R.id.parentPanel)))),
  57. isDisplayed()));
  58. appCompatButton6.perform(click());
  59. }
  60. }