Android单元测试基础

android 单元测试

1.在androidtest中获取Context上下文
    Context context = InstrumentationRegistry.getContext();
2.在androidtest中获取Activity
    @Rule
    public ActivityTestRule<MainActivity> activityRule = new ActivityTestRule<>(MainActivity.class);
    Activity activity = activityRule.getActivity();
3.通过activity获取View控件
    TextView textview = activity.findViewById(R.id.textview);
4.判断控件不为空
    assertNotNull("textview is null", textview);
5.判断view控件显示字符是不是指定字符串
    assertEquals("hello world!",mContentView.getText().toString());


Android自动化测试 Espresso用法整理
1.Espresso编写自动化就做三件事情:找某些东西、做某些事情、检查某些东西
2.听过id获取View控件
    onView(withId(R.id.tv_show));
3.通过文字获取view控件
    onView(withText("hello world!"));
4.检查判断view控件是显示的
    onView(withId(R.id.tv_show)).check(matches(isDisplayed()));
5.检查判断view控件是隐藏的
    onView(withId(R.id.tv_show)).check(matches(not(isDisplayed())));
6.检查view控件是不是显示文字"hello world!"
    onView(withId(R.id.tv_show)).check(matches(withText("hello world!")));
7.EditText清空显示的文字,并且写入文字"你好,username",关闭软键盘
    onView(withId(R.id.edit_show)).perform(clearText(), replaceText("你好,username"), ViewActions.closeSoftKeyboard());
8.点击button按钮
    onView(withId(R.id.btn_click)).perform(click());

遇到网络延迟,线程阻塞等异步操作时怎么写android自动化测试?
1.仍然使用Espresso框架,Activity页面中异步操作前调用
    EspressoIdlingResource.increment();
2.Activity页面中异步操作后调用
    EspressoIdlingResource.decrement();
3.MainActivityTest中在setUp方法中注册
    Espresso.registerIdlingResources(idlingresource);
4.MainActivityTest中在release方法中取消注册
    Espresso.unregisterIdlingResources(idlingresource);
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值