主流的移动端自动化工具

21 篇文章 0 订阅
21 篇文章 0 订阅

Robotium

1.支持语言 java 2.仅支持Android系统3.不支持跨应用

Macaca

1.支持语言 java Python node.js

2.支持安卓系统和苹果系统

3.支持跨应用

Appium

1.支持语言 java,c#,python,php,perl,ruby,nodejs

2.支持安卓系统和苹果系统

3.支持跨应用

自动化工具选择的关注点

1.是否支持native,webview

2.是否支持获取toast

3.是否支持跨应用

Appium-python库安装 命令行安装(需要联网)

pip install appium-Python-Client

手机启动参数

 desired_caps:负责启动服务端时的参数设置,
appium server 与手机端建立会话关系时,根据这些参数服务端可以做出相应的处理

    desired_caps常用参数:
    platformName         平台的名称:iOS, Android, or FirefoxOS
    platformVersion      设备系统版本号
    deviceName           设备号 IOS:instruments -s devices,Android: adb devices
    app                  安装文件路径:/abs/path/to/my.apk or http://myapp.com/app
    appActivity          启动的Activity
    appPackage           启动的包
    unicodeKeyboard      unicode设置(允许中文输入)
    resetKeyboard        键盘设置(允许中文输入)

    # server 启动参数
    desired_caps = {}
    desired_caps['platformName'] = 'Android' 
    desired_caps['platformVersion'] = '5.1'
    desired_caps['deviceName'] = '192.168.56.101:5555'
    desired_caps['appPackage'] = 'com.android.settings'
    desired_caps['appActivity'] = '.Settings'
    desired_caps['unicodeKeyboard'] = True
    desired_caps['resetKeyboard'] = True
  • 脚本内启动其他app
  • driver.start_activity(appPackage,appActivity)
  • 关闭app
  • driver.close_app()  # 关闭当前操作的app,不会关闭驱动对象
  • 关闭驱动对象

  • driver.quit()   # 关闭驱动对象,同时关闭所有关联的app

     怎么获取?

  • 第一个点一下再点东西可以获取详细详细 

     

  • 第二个获取x和y的值

  •  第四个返回

  • 第五个刷新

  •  

    第六个 获取代码

  •  第七个搜索

  • 第八个复制

  •  

    最后一个关闭

  • # server 启动参数
      desired_caps = {}
      desired_caps['platformName'] = 'Android' 
      desired_caps['platformVersion'] = '5.1'
      desired_caps['deviceName'] = '192.168.56.101:5555'
      desired_caps['appPackage'] = 'com.android.settings'
      desired_caps['appActivity'] = '.Settings'
      desired_caps['unicodeKeyboard'] = True
      desired_caps['resetKeyboard'] = True
    
      # 声明driver对象
      driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

1.通过id定位 方法:find_element_by_id(id_value) # id_value:为元素的id属性值 

2.scroll滑动事件 1.origin_el:滑动开始的元素 2.destination_el:滑动结束的元素

3.drag拖拽事件 1.origin_el:滑动开始的元素  2.destination_el:滑动结束的元素

4.应用置于后台事件 seconds:停留在后台的时间,单位:秒

5.swip滑动事件

   1.start_x:起点X轴坐标
      2.start_y:起点Y轴坐标
      3.end_x:  终点X轴坐标
      4.end_y,: 终点Y轴坐标
      5.duration: 滑动这个操作一共持续的时间长度,单位:ms

6.手指轻敲操作 

     1.element:被定位到的元素
      2.x:相对于元素左上角的坐标,通常会使用元素的X轴坐标
      3.y:通常会使用元素的Y轴坐标

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值