zoukankan      html  css  js  c++  java
  • Android App自动化测试(二)

    6.Appuim自动化测试框架API讲解与案例实践(三)

    如图1,可以在主函数里通过TestSuite来指定执行某一个测试用例;

    6.1,scroll();如图2

     

    从图3中可以看到当前页面的所有元素resource_id都是相同的,所以不能通过resource_id来定位元素,这里选择by_class_name方法来获取元素列表的方式,然后向scroll(object1,object2)中传入两个列表中值;

    6.2,drag()_and_drop();选中某个元素并拖拽到某个元素的位置;如图4,用法与scroll()相同,都是需要传入两个参数;

    6.3,swipe(start_x,start_y,end_x,end_y);滑动;x/y分别为起点和终点的坐标;那么什么时候会用到swipe()这个API呢?当在页面上无法获取到元素的属性的时候。如果可以获取到元素属性,就没有必要选择swipe(),因为swipe()相对scroll()和drag()_and_drop()是不够精确的;因为不同设备的分辨率是不一样的,在较大分辨率设备上写的脚本,有可能会超出较小分辨率的设备的范围;

    6.4,tap([(x1,y1)],[(x2,y2)],[(x3,y3)]......);传入的参数是一个数组,来实现1点或多点的点击,如图6;

    7.Appuim自动化测试框架API讲解与案例实践(四)

    7.1,flick(start_x,start_y,end_x,end_y),快速滑动;current_activity,当前activity的名字;wait_activity(activity名,等待显示的时间x,每过多长时间y检测一次activity是否显示),等待activity显示;如果显示了,返回True,如果没有显示,返回False;background_app(置于后台的时间x),将app置于后台,在参数的时间后再返回到前台;

    8.Appuim自动化测试框架API讲解与案例实践(五)

     

    8.1,is_app_installed(包名);查看app的安装状态,如果已经安装了,返回True,如果没有安装,返回False;remove_app(包名),卸载app;install_app(app的路径),安装app;launch_app(),启动app,启动初始化时的app;

     图8中使用install_app()时,需要在脚本初始化时先指定一个当前已经安装的app(如图9),如果直接指定要安装的app会出现报错,原因是脚本执行的时候找不到要安装的app;

    9.Appuim自动化测试框架API讲解与案例实践(六)

    9.1,close_app(),关闭app;start_activity(pacakge名,activity名),启动某个package下的某个活动页面;get_screenshot_as_file(),截屏;

  • 相关阅读:
    POJ 3140 Contestants Division (树形DP,简单)
    POJ 2378 Tree Cutting (树的重心,微变形)
    js数据类型--对象&数组
    关于JS call apply 对象、对象实例、prototype、Constructor、__proto__
    JS模块化编程(四)--require应用
    JS模块化编程(三)
    利用VS正则替换删除文本行首数据等字符
    JS模块化编程(二)
    JS模块化编程(一)
    js继承
  • 原文地址:https://www.cnblogs.com/ailiailan/p/7226548.html
Copyright © 2011-2022 走看看