Uiautomator是由谷歌推出的用于UI自动化测试的工具,经历了3个大版本迭代,以下是各版本差异的总结
第一代:uiautomator1.0
1、Java工程,以jar包的形式存在
2、用Eclipse或者idea编写代码
3、支持java、python语言
4、电脑驱动手机,不能在手机上单独运行,和appium类似
5、只能同时在单一app上测试,不能跨APP
6、需要继承UiAutomatorTestCase,测试方法需要以test开头。
7、使用Maven或Ant构建
8、日志使用System.out.print输出到控制台
9、最低兼容安卓4.1,API级别16以上
第二代:基于com.android.support库的uiautomator2.0
1、android工程,以apk包的形式存在,可以安装到手机(有两个apk,一个是普通的应用程序、一个是androidTest应用程序)
2、用androidStudio编写代码
3、支持java、kotlin语言
4、可以在手机上单独运行
5、可以在多个app互相跳转测试,可以跨APP
6、基于Junit4,测试用例无需继承于任何父类,方法名不限,使用Annotation进行
7、基于Instrumentation, 可以获取应用Context,可以使用Android服务及接口
8、新增UiObject2、Until、By、BySelector等接口
9、使用Gradle进行构建
10、日志输出到Logcat
11、最低兼容安卓4.3,API级别18以上
第三代:基于androidX库的