关于appium 手机一直弹出 waiting For Debugger 的一个解决方法

博主在使用PyCharm进行Appium自动化测试时遇到手机反复弹出'waitingForDebugger'对话框的问题,尝试了各种解决方案如adb命令、重启开发者模式等未果。最终发现关闭开发者模式下的'等待调试程序'选项成功解决了问题,从而能够正常运行自动化测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    在pycharm中运行以下代码时,本应该是打开app

from appium import webdriver
from appium.webdriver.extensions.android.nativekey import AndroidKey

desired_caps = {
  'platformName': 'Android', # 被测手机是安卓
  'platformVersion': '10', # 手机安卓版本
  'deviceName': 'redmi9', # 设备名,安卓手机可以随意填写
  'appPackage': 'tv.danmaku.bili', # 启动APP Package名称
  'appActivity': 'tv.danmaku.bili.ui.splash.SplashActivity', # 启动Activity名称
  'unicodeKeyboard': True, # 使用自带输入法,输入中文时填True
  'resetKeyboard': True, # 执行完程序恢复原来输入法
  'noReset': True,       # 不要重置App
  'newCommandTimeout': 6000, #连接的时间上限
  'automationName' : 'UiAutomator2'
  # 'app': r'd:\apk\bili.apk',
}

# 连接Appium Server,初始化自动化环境
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

# 设置缺省等待时间
driver.implicitly_wait(5)

结果发现手机一直在弹出一个 waiting For Debugger的弹框,虽然可以手动点击,但每次启动都要点击也太麻烦了吧,所以在站内搜索了一下,有的说 在命令行 adb kill-server 再 adb start-server就行,有的说重新启动手机的开发者模式就行,有的说手机重启就行。

   

### 使用Appium进行移动端应用的下拉框选择操作 为了在Appium中实现下拉框的选择操作,需要先定位到目标下拉框元素,再执行相应的选择命令。具体来说: 对于下拉框的选择操作,可以通过`select_option()`方法来完成,该方法接受两个类型的参数:一个是下拉选项的`value`属性值;另一个则是选项标签即`label`[^1]。 下面是一段Python代码示例用于展示如何利用Appium选取下拉菜单项: ```python from appium import webdriver from selenium.webdriver.support.ui import Select desired_caps = { 'platformName': 'Android', 'deviceName': 'emulator-5554', # 替换成实际设备名称或模拟器编号 'appPackage': 'com.example.app', # 应用包名 'appActivity': '.MainActivity' # 启动Activity的名字 } driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) # 假设已经找到了下拉框元素并存储到了dropdown_element变量里 dropdown_element = driver.find_element_by_id("id_of_dropdown") # 创建Select对象以便后续调用其内部的方法处理下拉列表逻辑 select = Select(dropdown_element) # 根据option的value或者text内容来进行选择, 下面两种方式任选一种即可 select.select_by_value("theValueYouWantToChoose") # 或者 select.select_by_visible_text("The visible text you want to choose") driver.quit() ``` 这段脚本展示了怎样初始化一个连接至本地运行着的Appium服务器会话,并找到特定ID标识下的下拉框组件实例化成`selenium.webdriver.support.ui.Select`类的对象,最后通过此对象提供的接口指定要激活的具体条目。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值