Appium使用

1、appium使用
  • 启动appium
    在这里插入图片描述
  • 查看配置里的java环境变量和ANDROID环境变量是否加载出来
    在这里插入图片描述
  • 点击启动服务
    在这里插入图片描述
  • 点击放大镜设置需要测试软件的基本配置
    在这里插入图片描述
    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        键盘设置(允许中文输入)
查询当前应用程序的包名和启动项
	adb shell dumpsys window w |findstr \/ |findstr name=
	adb shell dumpsys window | findstr mCurrentFocus
获取系统版本:adb shell getprop ro.build.version.release
查看链接系统型号:adb devices -l

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 点击启动会话
    在这里插入图片描述
  • 录制脚本
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
2、appium元素定位
  • 通过id定位
方法:find_element_by_id(id_value) # id_value:为元素的id属性值
业务场景:
  1.进入设置页面
  2.通过ID定位方式点击搜索按钮
代码实现:
      driver.find_element_by_id("com.android.settings:id/search").click()
      driver.quit()
  • 通过class定位
 方法:find_element_by_class_name(class_value) # class_value:为元素的class属性值
业务场景:
    1.进入设置页面
    2.点击搜索按钮
    3.通过class定位方式点击输入框的返回按钮
  代码实现:
        # id 点击搜索按钮
        driver.find_element_by_id("com.android.settings:id/search").click()
        # class 点击输入框返回按钮
        driver.find_element_by_class_name('android.widget.ImageButton').click()
        driver.quit()
  • 通过xpath定位
方法:find_element_by_xpath(xpath_value) # xpath_value:为可以定位到元素的xpath语句
  *** android端xptah常用属性定位:
      1. id : //*[contains(@resource-id,'com.android.settings:id/search')] 
      2. class ://*[contains(@class,'android.widget.ImageButton')]
      3. text ://*[contains(@text,'WLA')]

  *** 模糊定位 contains(@
### 关于 Appium使用方法 #### 安装与环境准备 为了能够顺利运行基于 Appium 的自动化测试脚本,需要先完成一系列的准备工作。这包括但不限于安装 Node.js 和 Appium Server[^4]。Node.js 是 Appium 运行的基础依赖项之一,而 Appium Server 则是实际执行测试的核心组件。 对于 Windows 用户而言,在 Win 10 上可以按照官方文档逐步完成这些步骤。如果目标设备为 Android,则还需要配置好 Android SDK 并设置 PATH 环境变量以便访问 adb 工具和其他必要的命令行功能。 #### 测试对象支持范围 Appium 支持多种类型的移动应用作为其测试目标,具体来说涵盖了原生应用程序(native app),混合模式下的 Web 应用(hybrid app)以及通过移动端浏览器加载的标准网页(mobile web app)[^2]。这意味着开发者可以根据自己的需求选择合适的场景来构建相应的测试框架。 #### 使用界面工具辅助开发流程 - **Appium Desktop**: 提供了一个图形化的管理平台,允许用户轻松启动服务器实例并监控当前连接状态等基本信息[^1]。 - **Appium Inspector**: 此外还有专门设计用来探索目标APP内部结构的小型客户端——即所谓的“Inspector”。借助该插件可以帮助工程师更直观地理解各个UI控件之间的层次关系及其属性值变化情况,从而提高编写定位表达式的效率和准确性[^3]。 #### 编程语言绑定 虽然理论上任何具备HTTP请求能力的语言都可以调用Appium API接口实现交互控制目的;但在实践中最为常见且成熟的组合方案当属 Python + Selenium WebDriver 。这是因为两者之间存在天然契合度较高的抽象层定义标准协议通信机制 ,再加上丰富的社区资源积累使得学习成本相对较低的同时也能获得较好的技术支持保障效果 . ```python from appium import webdriver desired_caps = { 'platformName': 'Android', 'deviceName': 'emulator-5554', 'appPackage': 'com.example.app', 'appActivity': '.MainActivity' } driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) element = driver.find_element_by_id("buttonID") if element.is_displayed(): element.click() driver.quit() ``` 上述代码片段展示了如何利用Python驱动一个简单的点击事件操作过程。其中`webdriver.Remote()`函数负责初始化远程会话链接至本地监听端口上的服务进程上;随后我们可以通过查找特定id名称对应的视图节点实例化Element类的对象形式对其进行进一步的方法调用比如验证可见性或者触发手势动作等等。 ---
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值