博客
关于我
Python + Appium 之 APP 自动化测试,坑点汇总!(建议收藏)
阅读量:799 次
发布时间:2023-03-05

本文共 1711 字,大约阅读时间需要 5 分钟。

Android环境搭建与Appium脚本运行常见问题解决

一、环境搭建:环境变量配置不生效

在配置Android开发环境时,常会遇到环境变量未生效的问题。以下是详细的解决方法:

  • 配置ANDROID_HOME变量

    在系统变量中添加ANDROID_HOME环境变量,值为你的Android SDK安装路径。例如,设为D:\android-sdk(请根据实际路径调整)。

  • 配置PATH变量

    在现有的PATH变量中,追加Android SDK Build Tools的路径。例如,在PATH中添加D:\android-sdk\build-tools\22.0.1,记得在末尾加上英文分号。

  • 重启系统

    完成环境变量配置后,建议重启电脑。某些情况下,未生效的环境变量可能与缓存有关,重启可以确保变量生效。


  • 二、运行脚本:提示安装unlock、manager等插件失败

    在使用Appium进行Android测试时,可能会遇到插件安装失败的问题。以下是解决方法:

  • 禁用插件安装提示

    打开文件D:\Appium\node_modules\appium\lib\devices\android\android.js,将以下代码注释掉:

    //this.initUnicode.bind(this)//this.pushSettingsApp.bind(this)//this.pushUnlock.bind(this)//this.unlock.bind(this)

    注释完成后,运行脚本即可避免插件安装提示。

  • 确保修改生效

    如果修改后仍提示安装插件,可能是文件修改未生效。重启Appium服务器后重新运行脚本。


  • 三、运行脚本:错误提示"Permission to start activity denied"

    当遇到权限不足启动活动的错误时,可以按照以下步骤解决:

  • 获取apk包名和启动活动信息

    在Doc窗口中执行命令:

    aapt dump badging D:\Apk\app-v3.7.6_docker.apk

    或将apk拖入命令行进行处理。运行后,会得到应用包名和启动活动名称。

  • 检查aapt命令是否可用

    如果Doc窗口提示aapt不是内部或外部命令,说明aapt未正确添加到系统路径中。

    • 打开Android SDK的build-tools目录,添加路径到系统PATH变量中。例如,添加D:\android-sdk\build-tools\22.0.1。
    • 重启Doc窗口后,重新执行aapt命令。

  • 四、解决Doc窗口执行aapt命令时提示"不是内部或外部命令"

  • 检查aapt可执行性

    确保aapt.exe位于Android SDK的build-tools目录中(如D:\android-sdk\build-tools\22.0.1)。

  • 更新系统路径

    • 右键点击This PC。
    • 选择"属性" > "高级系统设置" > "环境变量"。
    • 在PATH变量中追加build-tools目录路径,确保路径正确。
    • 重启系统后,尝试再次运行aapt命令。

  • 五、手动启动APP时无引导页,脚本启动时有引导页处理方法

  • 使用uiautomatorviewer.bat工具

    脚本启动到引导页后,使用SDK自带工具uiautomatorviewer.bat定位引导页面,获取元素信息。

  • 滑动屏幕定位元素

    如果退出登录按钮不在当前屏幕,可以通过滑动屏幕定位元素。代码示例如下:

    # 获取屏幕尺寸x = self.driver.get_window_size()['width']y = self.driver.get_window_size()['height']# 滑动屏幕self.driver.swipe(x / 2, y * 0.8, x / 2, y * 0.2, 200)time.sleep(3)# 使用坐标定位元素self.driver.find_element_by_class_name("android.view.View").click()

  • 以上解决方案涵盖了Android开发环境搭建及Appium脚本运行中的常见问题,希望对您有所帮助!

    转载地址:http://ziafk.baihongyu.com/

    你可能感兴趣的文章
    Pytest+Unittest+Git+Jenkins企业级CICD自动化测试平台建设方案
    查看>>
    Pytest+Yaml 数据驱动测试用例
    查看>>
    pytest-base-url插件之配置可选的项目系统URL
    查看>>
    pytest-xdist 进行多进程并发测试!
    查看>>
    pytest-xdist:远程多主机 - 分布式运行自动化测试
    查看>>
    Pytest中doctests的测试方法应用!
    查看>>
    Pytest中进行测试环境切换:pytest_addoption!
    查看>>
    pytest利用request fixture实现个性化测试需求详解
    查看>>
    pytest单元测试实战
    查看>>
    pytest单元测试框架
    查看>>
    Pytest参数详解 — 基于命令行模式
    查看>>
    pytorch cv2 plt transforms pause waitforbuttonpress一个完整的图片处理程序
    查看>>
    pytest学习和使用 - Pytest用例执行结果有哪几种状态?
    查看>>
    pytest实战技巧之参数化应用!
    查看>>
    Pytest实践:Python测试技术基础知识!
    查看>>
    Pytest接口自动化测试实战演练
    查看>>
    Pytest插件pytest-selenium-让自动化测试更简洁
    查看>>
    Pytest数据驱动怎么玩?实战教程来了!
    查看>>
    Pytest数据驱动怎么玩?实战教程来了!
    查看>>
    pytest文档25-conftest.py作用范围
    查看>>