总结Android UI 自动化测试

AndroidUI自动化测试的现状

  1. 移动应用改变着我们的生活
  2. Android手机数量全面超越iOS系统手机
  3. Android在多个智能领域逐步扩张
  4. Android应用的增加,带动测试行业的发展
  5. 手工黑盒测试入门简单,占据绝大部分市场
  6. Android应用测试从业者逐年增加

AndroidUI测试框架介绍

MonkeyRunner

编写语言:Python
运行环境:Python环境,adb链接PC运行
测试对象:UI测试
测试限制:主要是用坐标,逻辑判断较差
代码风格:

device=MonkeyRunner.waitForConnection()#链接手机设备
device.press('KEYCODE_HOME',MonkeyDevice.DOWN_AND_UP)#点击Home键

Instrumentation

编写语言:Java
运行环境:adb命令启动或者手机中直接启动测试
测试对象:单个Activity测试,需与测试应用相同的签名
测试限制:主要用于白盒测试和UI测试
代码风格:

mActivity.runOnUiThread(newRunnable(){
	publicvoid run(){
	mSpinner.requestFocus();
	}
});

Robotium

编写环境:Java基于Instrumentation封装
运行环境:adb命令启动或者手机中直接启动测试
测试限制:单个Activity,需与测试应用相同的签名
代码风格:

solo.clickOnMenuItem(“Addnote”);
solo.goBack();

UiAutomator

谷歌在Android4.1推出UiAutomator测试框架,主要用于UI的自动化测试,功能:模拟各种动作,如点击,长按,滑动,案件等操作。

  • 为什么使用UiAutomator?
  1. 优点:编写快速,运行简单,API简单易学,无Activity限制,无需签名,几乎可以模拟所有认为操作,编写灵活,使用方便,可快速学习,限制少,模拟目前90%以上的手工操作,扩展性好,调用Android很大部分API,基于以上,可快速转化为生产力,给企业带来效率
  2. 缺点:对权限控制不足,无法像Instrumentation高权限操作应用,很多AndroidAPI无法利用

实例演示:
工具:UIAutomator Viewer
需要libs存放依赖包android.jar和uiautomator.jar,依赖包位于sdk–>platform–>对应android下
新建测试类,继承com.android.uiautomator.testrunner.UiAutomatorTestCase
若测试条件含有中文,字符编码一定要是“UTF-8”

实现textXXX的方法

/**
 * 测试打开浏览器,修改网址,访问
 */
public class Test extends UiAutomatorTestCase{
	public void testDemo() throws UiObjectNotFoundException{
	// 获取浏览器对象
	UiObjectbrowserObject=new UiObject(new UiSelector().text(“浏览器”));
	
	// 实现点击和等待新窗口出现
	browserObject.clickAndWaitForNewWindow();
	
	// 通过class类名定位网址输入框对象
	UiObjecteditObject=new UiObject(newUISelector().className(“android.widget.EditText”));
	
	// 执行点击
	editObject.click();
	
	// 删除输入框中的内容
	UiDevice.getInstance().pressDelete();
	
	// 修改文本内容
	editObject.setText(“www.baidu.com”);
	
	// 按下回车键
	UiObject.getInstance().pressEnter();
	sleep(2000);
	}
}

终端命令行操作(已废弃)

android create uitest-project -n jar包名 -t第几个sdk-p 工作空间路径
# 将生成的build.xml文件中的default值help修改为build,编译
# 将编译生成的jar文件push入手机中
adb push 工作空间+\bin\+jar文件名/data/local/tmp/
# 启动测试
adb shell uiautomator runtest 文件.jar-c 完整类名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值