软件测试笔记_15_Appium自动化测试框架、操作API

移动端Appium等价于web端selenium

一、Appium介绍

Appium
移动端自动化测试框架
用于测试原生应用(纯java)、移动端 页应用(html css)和混合型应用(java html css)
跨平台的

二、Appium自动化测试环境搭建

安装 Appium的客户端 & Appium-python库
关系:python代码 调用 Appium-python库 内的方法,方法再去调用 Appium客户端,再去操作手机

1. Appium客户端安装

客户端下载地址
版本选择

三、Hello Appium

目标要求
能够使用Appium启动任意应用程序
能够了解“前置代码”中各项参数的含义【工作时更多的是复制粘贴,无需手写】

1. 快速体验

  1. 应用场景
    1. app自动化时,针对某项产品、某个软件进行测试的时候,会先让模拟器/真机协助打开这款软件
    2. 学习如何打开某个应用程序
  2. 需求
    打开设置的应用程序
  3. 步骤
    1. 打开手机模拟器
    2. 打开appium工具–启动
    3. 创建python项目
    4. 新建 文件
    5. 复制以下代码并执行即可

注意点
代码配置了启动应用程序相关的参数
之后的项目也需要用到这些参数
成为 “前置代码”(称为-启动参数)

2. 参数详解【掌握】

(1)应用场景

  • 先手动打开应用程序
  • 使用查找包名&界面名的命令
  • 再进行对应的修改
  • 平台的名字 platformName
  • 平台的版本 platformVersion

四、Appium基础操作API

1. 在脚本内启动其他app

在一个应用内跳转到另一个应用

  • 格式

2. 获取app的包名和界面名

通过对应的属性进行获取

  • 使用driver对象调用
  • 获取包名
  • 获取界面名

3. 关闭app和驱动对象

应用场景:关闭当前应用程序,打开新的应用程序

  • 关闭当前操作的app,不会关闭驱动对象
  • 关闭驱动对象,同时关闭全部关联的app

4. 安装/卸载/判断是否安装app

应用市场内的软件,先【判断是否安装】,已安装的显示【安装卸载】,未安装的显示【安装】

  • 安装app: [路径通过电脑端拖拽进终端得到]
  • 卸载app:
  • 判断是否安装app:

案例:判断 安置市场 app是否已经安装
安智市场apk安装包下载

5. 将应用置于后台

类似于‘银行app’
具体:进入后台一段时间之后,再次进入app需要重新输入密码登录
模拟Home键 回到前台

  • 模拟放置后台一段时间之后再次回到前台,模拟热启动
  • 参数: 停留的秒数
  • 格式:

补充
热启动:进入后台再进入前台(不关闭电源的情况下)
冷启动:关机后再开(切断电源的行为)

五、UIAutomatorViewer的使用

获取元素的特征信息

1. 介绍

  • 应用场景
    定位元素的时候,需要根据【元素特征】进行定位
    UIAutomatorViewer 用来获取元素特征
  • 简介
    UIAutomatorViewer 用来扫描和分析Android应用程序的UI控件的工具

2. 使用步骤

  • 电脑连接 真机,或者 打开安卓模拟器
  • 终端输入退出

3. 注意点

    十一、手机测试API

    1. 获取手机分辨率

    • 返回值:字典
    • 键名:、
    • 键值:int整数型
    • 单位:像素

    2. 获取手机截图

    • 默认保存在当前目录下(终端pwd得到路径)

    3. 获取和设置 络状态

    • 设置 设置为飞行模式
    • 判断当前 络是不是流量状态下的( 络类型)
      • 不推荐
      • 或者
      • 推荐
      • 导包: 软件测试笔记_15_Appium自动化测试框架、操作API

    4. 发送键到设备

    模拟点击音量键、返回键…
    方式:
    参数:
    :发送给设备的关键代码
    :关于被发送的关键代码的元信息,一般为默认值

    • android keycode 对照表

    5. 打开和关闭手机通知栏

    • 打开通知栏:
    • 关闭通知栏
      • 手机按键操作:返回键
      • 手指的点击 滑动关闭

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年9月8日
下一篇 2022年9月8日

相关推荐