51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1976|回复: 0
打印 上一主题 下一主题

uiautomator中UiScrollable下滑自动找到内容点击

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-13 16:45:31 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我们操作手机时,要选择那个东西,当前界面没有,就要滑动去找,找到就点击它;

例如:要打开设置中的更多内容,更多这个按钮在下方,打开设置界面是看不到的,需要滑动下找,这就用的了我们的UiScrollable的api;

第一步:先找到可以滑动的界面(uiautomator view工具可以看到Scrollable属性是true代表可以支持滑动,false代表不支持滑动)

第二步:设置最大的扫到次数,不可能无限滑动

第三步:找到你想要的,用UiObject去定位内容,指定的那个内容。

第四步:找到了就操作它即可;
  1. //
  2. Runtime.getRuntime().exec("am start com.android.settings");//打开设置应用
  3.                
  4. //uiautomator查看工具,只有Scrollable显示为true的,都是可以支持滑动的界面
  5. UiScrollable settingMore = new UiScrollable(new UiSelector()
  6. .className("android.widget.ListView"));

  7. settingMore.setMaxSearchSwipes(50);//设置最大可扫动次数

  8. UiObject object = new UiObject(new UiSelector().text("更多"));//找到“更多”这个选项

  9. settingMore.scrollIntoView(object);//然后点击 它(更多)

  10. object.click();//
复制代码

其他的还有文件夹,比如:打开文件夹,然后想打开某个文件夹,这也需要滑动查找,当前界面没有就滑动下去,直到找到为止。大家举一反三吧!

举例:打开手机目录下的GotaTestPresure文件夹(即sdcard/GotaTestPresure),

  1. //文件夹内滑动找到GotaTestPresure文件夹,找出Scrollable为true的  
  2. UiScrollable bigKuang = new UiScrollable(new UiSelector()
  3. .resourceId("zte.com.cn.filer:id/pager"));//文件夹大框,判断看要不要下滑查找
  4.   
  5. bigKuang.setMaxSearchSwipes(50);//设置最大可扫动次数  
  6. UiObject clickGoTaFile = new UiObject(new UiSelector().text("GotaTestPresure"));//GotaTestPresure文件夹  
  7. bigKuang.scrollIntoView(clickGoTaFile);//滑动并找到GotaTestPresure文件夹,若在当前界面就不滑动了  
  8. clickGoTaFile.click();//点击打开GotaTestPresure文件夹
复制代码



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-23 04:06 , Processed in 0.061761 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表