【移动自动化】【二】Appium
阅读原文时间:2023年07月09日阅读:3

实施自动化需要的工具

  1. Android控制工具,获取获取Android各种数据和控制,Appium会调起adb命令去执行Android设备

  2. adb命令参考 https://www.cnblogs.com/totoro-cat/p/9969445.html

  3. 内嵌了Appium Server和Inspector工具,可以帮我分析app

  4. 下载地址,建议版本不要太高,其实每个版本相差不是特别大

  5. Appium的核心工具

  6. 各种语言的封装库,用于连接appium server

Appium Desktop

从官网下载桌面版本直接安装即可https://github.com/appium/appium-desktop/tags

  • UI 分析
  • 录制用例
  • 元素查找测试
  • Attach 已有的 session
  • 云测试
  1. appium默认端口4327

  2. 在启动appium前,先点击edit configuration, 看你的java环境android_home环境是否配置,如果配置好,则appium会自动识别(怎么配置可以看上一篇,也可以自己百度,网上很多)

  3. 点击start server

  4. 打开appium server, 我们可以看到当前环境占用4723端口,点击inspection分析

  5. 在Desired Capabilities输入一下的信息,这些都是必填项的(我这边模拟器已经提前安装了app, 你也可以添加app参数,指定app地址)参数参考地址https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/caps.md

    platformName: 需要测试的设备android or ios

    deviceName: 这个可以随意命名

    appPackage:app包名

    appActivity:app启动activity

  6. 点击start session

Appium server安装

  1. 安装nodejs,LTS版本,版本不能太高,我电脑安装了v12.18.3

    root@iZuf6aygpm6zxxzuh3am6vZ:~# node -v
    v12.18.3

  2. 安装Appium,因为特殊原因可能装不上,所以要换淘宝镜像

    root@iZuf6aygpm6zxxzuh3am6vZ:~# npm install -g cnpm --registry=https://registry.npm.taobao.org
    root@iZuf6aygpm6zxxzuh3am6vZ:~# cnpm install -g appium@1.14.0
    root@iZuf6aygpm6zxxzuh3am6vZ:~# appium -v
    1.14.0

  3. 需要python2环境,安装python2

    root@iZuf6aygpm6zxxzuh3am6vZ:~# python
    Python 2.7.12 (default, Jul 21 2020, 15:19:50)
    [GCC 5.4.0 20160609] on linux2
    Type "help", "copyright", "credits" or "license" for more information.

4.安装appium-doctor设置adb java android路径, 都出现绿色说明都配置好了,直接输入appium就启动服务了,

root@iZuf6aygpm6zxxzuh3am6vZ:~# npm install -g appium-doctor@1.14.0

简单的测试脚本

  1. chi/demo_1.py 前提安装依赖pip install Appium-Python-Client

    from appium import webdriver

    caps = {}

    caps["platformName"] = "android"
    caps["deviceName"] = "emulator-5554"
    caps["appPackage"] = "com.shoumi.shoumi"
    caps["appActivity"] = ".activity.startActivity"
    caps["autoGrantPermissions"] = True

    driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", caps)

    driver.implicitly_wait(1000)

    driver.quit()

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章