什么是Espresso
Espresso是Google官方提供的Android UI自动化测试的框架。他可以覆盖UI页面,对节点树上的View进行操作,通过对比执行结果,返回测试结果。
android studio 在我们新建项目的时候会自动集成Espresso。
为什么使用Espresso
通过自动化测试,相比测试手动执行测试冒烟点,可以覆盖更多的页面。同时自动化测试随时随地都可以进行,不受测试资源约束。
Espresso如何工作
Espresso执行的时序是同步的,操作涉及到异步线程的比如http请求,我们为了获得请求结果,可以让线程睡眠一段时间。
Espresso执行逻辑可以概括为:找到匹配元素=》执行操作=》对比产生结果
- 匹配
通过id、text、tag、visibile、enable、class类型等特征,找到匹配的View - 操作
对找到的view进行的操作,比如点击、手势、文本输入 - 对比
对操作产生的结果,进行对比。比如判断某个View是否显示
测试用例如何编写
使用测试同事提供的开发提测用例。确保冒烟点全部都单元测试通过。
准备工作
Espresso函数一览
除了我们提到的匹配View Matchers
、操作View Actions
、对比View Assertions
等功能外,我们还看到了Intent,通过他,我们可以更灵活的访问各种测试路径。
网友评论