appium ui自动化之:操作手机端H5

文章介绍了如何配置环境进行手机端H5网页的自动化测试,包括下载对应版本的Chrome浏览器和webdriver,使用F12工具或Chrome的Inspect功能进行元素定位,以及通过selenium在原生App和H5间切换进行测试。

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

环境配置

  • 手机端下载chrome浏览器
  • 查看浏览器版本
  • 去电脑端下载手机上对应的chrome的版本的webdriver:点我下载chromedriver
  • 将webdriver放在python的脚本目录中

H5网页定位工具

对于手机端H5网页来讲,不能使用之前的uiautomatorviewer,它主要针对android原生应用元素的信息定位。而Inspector定位工具也只能查看部分元素信息。一般常用如下两种方式进行元素识别:

方式1:使用浏览器F12工具

输入被测网站,将浏览器切换到手机模式,使用元素定位工具定位(和定位web网页的方式一样)

方式2:

1、手机上安装Chrome浏览器,开启USB调试模式

2、在手机上,使用安装的Chrome浏览器打开待测H5页面

3、在电脑端的Chrome浏览器输入chrome://inspect

4、打开链接后,选中DiscoverUSBdevices(一般默认选中状态),可以看到监测到的设备,然后点击inspect,弹出页面后,就可以审查页面上的元素了。

备注:在第一次使用该工具时,由于远程调试需向google的一个链接:https://chrome-devtools-frontend.appspot.com获取数据,不FQ打开后会是空白页面,需要VPN再次运行该工具即可正常使用。

5、此时可以和方式一类似,点击选择元素按钮进行识别

方式3:

selenium设置浏览器为手机模式

原生App和H5切换

# 获取原生app元素和chrome 的元素
print(driver.contexts)

# 焦点切换到原生app上
driver.switch_to.context('NATIVE_APP')


# 焦点切换到CHROMIUM的页面
driver.switch_to.context('CHROMIUM')

python代码准备

# 导入webdriver
from appium import webdriver


# 声明服务器地址
server = 'http://localhost:4723/wd/hub'

devices_system = {
        'automationName': 'appium',
        # 平台名
        'platformName': 'Android',
        # 设备名,可通过adb devices查询
        'driverName': '19111FDF600ADT',
        # 系统版本,可通过adb shell getprop ro.build.version.release,若是鸿蒙系统,写10.0
        'platformVersion': '13.0.0',
        # 浏览器名
        'browserName':'chrome',
        # 浏览器驱动所在路径
        'chromedriverExecutable':'D:/auto/app_auto/chromedriver.exe'
    }

# 连接手机和App
driver = webdriver.Remote(server, devices_system)

# 手机端H5页面,本质上还是一个网页,元素定位等操作和写法,和selenium-web端的写法一致,在此不过多赘述,如下:
driver.get('https://xxx.com')
driver.find_element(By.XPATH,'//input[@id="mobile"]').send_keys('xxx')
driver.find_element(By.XPATH, '//button[text()="获取验证码"]').click()

要连接手机并使用Appium进行测试,需要进行以下步骤: 1. 设置手机为开发者模式,并开启USB调试。这可以通过在手机设置中找到开发者选项来完成。确保数据线已连接手机和电脑。 2. 在电脑上安装Appium,并配置环境。你可以从手机上下载Chrome浏览器,并在电脑上下载与手机上Chrome浏览器版本匹配的ChromeDriver。将ChromeDriver放置在Python脚本目录下。 3. 在Python脚本中导入Appium的webdriver模块,并指定服务器地址和设备信息。 4. 使用`webdriver.Remote()`方法连接手机和Appium服务器。 5. 在代码中使用类似于Selenium的元素定位和操作方法来执行测试。 以下是一个示例代码: ``` from appium import webdriver # 声明服务器地址 server = 'http://localhost:4723/wd/hub' # 设备信息 devices_system = { 'automationName': 'appium', # 平台名 'platformName': 'Android', # 设备名 'driverName': '19111FDF600ADT', # 系统版本 'platformVersion': '13.0.0', # 浏览器名 'browserName':'chrome', # 浏览器驱动所在路径 'chromedriverExecutable':'D:/auto/app_auto/chromedriver.exe' } # 连接手机和App driver = webdriver.Remote(server, devices_system) # 执行测试操作,例如访问H5页面并进行元素操作 driver.get('https://xxx.com') driver.find_element(By.XPATH,'//input[@id="mobile"]').send_keys('xxx') driver.find_element(By.XPATH, '//button[text()="获取验证码"]').click() ``` 请确保你已按照以上步骤配置好环境和代码,并将相关信息替换成你自己的设备和路径信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [appium ui自动化之:操作手机端H5](https://blog.youkuaiyun.com/jkbxql/article/details/130640393)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Appium学习笔记02-实体手机连接](https://download.youkuaiyun.com/download/weixin_38570406/14016687)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值