appinum加python实现app功能测试

1、下载安装jdk,并在高级环境设置中配置jdk环境变量

2、安装appinum和node(注意:安装目录尽量不存在中文)

        a、安装后成功后配置node环境变量,配置成功后打开cmd命令行,输入node -v进行验证

3、打开appinum,在appinum中配置环境变量

        至此,appinum中的jdk环境配置成功

4、启动appinum的两种方式

        a、直接通过appinum中的appinum.exe,点击快捷方式,点击start server直接启动

        

        成功启动后的界面

        b、通过cmd命令行启动appinum中的服务

                node appinum安装路径 resources\app\node_modules\appium\build\lib\main.js进行启动

5、连接手机,用adb devices查找到手机的sn号

6、点击启动检查进行配置

7、进来之后将以下json copy到Desired Capabilities下JSON Representation中,会自动进行填充

{
  "platformName": "Android",    # 代表系统是安卓
  "platformVersion": "9",   # 安卓版本
  "deviceName": "e748de73",  # 手机的sn号
  "appPackage": "com.tencent.mobileqq", # 应用包名
  "appActivity": ".activity.SplashActivity",  # 下边注释有
  "noReset": "true",   # 是否清除数据
  "unicodeKeyboard": "true",  # 编码格式
  "ensureWebviewsHavePages": "true"
}

注:appActivity查找

       adb shell dumpsys activity | findstr 包名 | findstr LAUNCHER  (必须打开被测程序后执行命令)

        

/后就是appActivity的value

不知道包名可通过 adb shell pm list packages 查找

                              adb shell pm list packages -3 查找三方包名

     复制完成后 自动匹配数据根据情况进行修改

点击右下角save给一个名字进行保存后续可重复使用,保存完成后,我们可在Saved Capability Sets中看到,运行时可点击右下角start session进行,将会手机回到主界面,点击start session,手机会自动进入程序(此环节较慢)

进入之后的页面

8、录制脚本并进行输入点击操作

        

点击后进行脚本录制

后续就可进行脚本录制

       例如登录按钮点击后,点击右方tap(相当于click操作,相同的操作还有send keys输入操作和clear清空操作)

9、使用python执行脚本

        a、将脚本复制到python文件中

        b、下载appinum包 通过pip install appinum-python-client==1.2.0 -i 镜像源

        c、将配置复制到python中

        d、创建driver,因为appinum打开程序较慢 进行隐式等待

from appium import webdriver

caps = {
  "platformName": "Android",
  "platformVersion": "9",
  "deviceName": "e748de73",
  "appPackage": "com.tencent.mobileqq",
  "appActivity": ".activity.SplashActivity",
  "noReset": "true",
  "unicodeKeyboard": "true",
  "ensureWebviewsHavePages": "true"
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',caps)  # 这个参数下边注释
driver.implicitly_wait(10)

el1 = driver.find_element_by_id("com.tencent.mobileqq:id/btn_login")
el1.click()
el2 = driver.find_element_by_id("com.tencent.mobileqq:id/t3i")
el2.click()
el3 = driver.find_element_by_accessibility_id("请输入QQ号码或手机号或QID或邮箱")
el3.send_keys("1888888888")
el4 = driver.find_element_by_accessibility_id("密码 安全")
el4.send_keys("1888888888")
el5 = driver.find_element_by_accessibility_id("同意协议")
el5.click()
el6 = driver.find_element_by_accessibility_id("登录")
el6.click()

       Remote里有两个参数,第一个通过appinum中的Custom Server中的数据去输入,第二个参数是本地的一些配置,可直接copy appinum中的json

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值