本篇文章来自 新根 的投稿,是关于Espresso自动化UI测试框架的基础讲解以及案例分析,旨在帮助那些还未入门的朋友了解相关知识,希望大家能更加悠闲地进行UI自动化测试。
新根 的博客地址:
http://blog.csdn.net/hexingen
* Espresso英文文档,本人翻译水平有限,可能存在不足。
Espresso 是 Google官方提供的Android UI自动化测试的框架。
使用 Espresso 能写出简洁,美观,可靠的 android ui test。
Espresso 的重要组成部分:
Espresso: 通过 onView() 和 onData() 与view交互的进入点,它的api不依赖任何view。
ViewMatchers: 实现了 Matcher<? super View> 的集合对象。通过 onView() 来定位当前的view 。
ViewActions: 具备操作方法(例如点击操作)的集合对象,它里面的操作可以通过 ViewInteraction.perform() 来实现 。
ViewAssertions: 用它可以断言,查看当前view的状态,ViewInteraction.check() 会执行它 。
来张 Espresso 的小抄:
建议下载或点击放大查看
案例:
onView(withId(R.id.main_view)).perform(click()).check(matches(isDisplayed()));
分析:
withId() 通过id获取到 ViewMatcher;
click() 是一个 ViewAction(即操作);
matches() 是一个 ViewAssertions。