博客
关于我
Python + Appium 自动化操作微信入门(超详细)
阅读量:806 次
发布时间:2023-03-05

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

Appium自动化测试工具入门及微信操作实例

环境配置

JDK配置

  • 下载地址:访问Oracle官方下载页面,获取JDK 8安装包。
  • 环境变量配置:
    • 新建JAVA_HOME变量,路径设为JDK安装目录。
    • 在系统路径中添加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin%。
    • 新建CLASSPATH变量,值为.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar%。

Android SDK配置

  • 下载地址:访问开发者工具官网,获取Android SDK。
  • 环境变量配置:
    • 新建ANDROID_HOME变量,路径设为Android SDK安装目录。
    • 系统路径中添加%ANDROID_HOME%\tools;%ANDROID_HOME%\build-tools\30.0.0-preview;%ANDROID_HOME%\platform-tools%。

Appium安装

  • 下载地址:访问GitHub releases,获取Appium客户端。
  • 安装Python库:使用pip安装appium-python-client。
  • 配置Appium:启动Appium后,设置JDK和Android SDK路径。

Momo 模拟器配置

  • 下载地址:访问51xiazai官网,获取Momo模拟器。
  • 安装与连接:-安装完成后,打开Appium,输入虚拟设备信息。-在命令行执行adb connect 127.0.0.1:7555,确保模拟器连接成功。

使用说明

启动Appium

  • 启动Appium后,点击“启动服务器”,进入测试界面。

微信操作

添加好友

代码示例:

desired_caps = {    "platformName": "Android",    "deviceName": "emulator-5554",    "platformVersion": "6.0.1",    "appPackage": "com.tencent.mm",    "appActivity": "com.tencent.mm.ui.LauncherUI",    'noReset': True,    'unicodeKeyboard': True,    'resetKeyboard': True}driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)time.sleep(10)# 点击+号driver.find_element_by_id('com.tencent.mm:id/ef9').click()time.sleep(5)# 选择添加朋友driver.find_elements_by_id('com.tencent.mm:id/gam')[1].click()time.sleep(5)# 搜索框点击driver.find_element_by_id('com.tencent.mm:id/fcn').click()time.sleep(5)# 输入微信号driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys('ityard')time.sleep(3)# 搜索driver.find_element_by_id('com.tencent.mm:id/ga1').click()time.sleep(3)# 添加到通讯录driver.find_element_by_id('com.tencent.mm:id/g6f').click()

发送消息

代码示例:

# 发送消息driver.find_element_by_id('com.tencent.mm:id/f8y').click()time.sleep(10)# 输入搜索信息driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys('Python小二')time.sleep(3)# 点击搜索到的好友driver.find_element_by_id('com.tencent.mm:id/tm').click()time.sleep(3)# 输入文字driver.find_element_by_id('com.tencent.mm:id/al_').send_keys('hello')time.sleep(3)# 选择表情driver.find_element_by_id('com.tencent.mm:id/anz').click()time.sleep(3)# 发送消息driver.find_element_by_id('com.tencent.mm:id/rv').click()time.sleep(3)# 发送按钮driver.find_element_by_id('com.tencent.mm:id/anv').click()driver.quit()

元素定位方法

通过Appium的ID获取元素,使用find_element_by_id或find_elements_by_id,如:

element = driver.find_element_by_id('com.tencent.mm:id/xx')# 多个元素使用find_elements_by_id获取列表elements = driver.find_elements_by_id('com.tencent.mm:id/xx')

注意事项

  • 模拟器反应较慢,适当增加time.sleep时间。
  • 保持ADB连接稳定,确保模拟器正常运行。

最后感谢

感谢每一位关注我的读者,希望本文能为您提供实用的解决方案。如需进一步帮助,请随时联系。

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

你可能感兴趣的文章
Python3 shutil模块
查看>>
Python关于strftime函数详细解析 附实战代码
查看>>
Python3 tutorial day3
查看>>
python3 week4
查看>>
Python3 创建数组
查看>>
python3 套接字异常(a byte-like object is required not str)
查看>>
python3 实现用户三次输入错误记录黑名单并对该用户登录锁定-day1
查看>>
python3 文本变图片
查看>>
Python3 查看 com 组件的属性
查看>>
python3 案例分享--发邮件
查看>>
python3 模板库_Python3 标准库概览_Python教程_我爱模板网 - 提供下载各种免费建站资源,免费网站模板,免费网页特效,让你爱上建站!...
查看>>
Python3 求最大/小值及索引值 Numpy
查看>>
python3+django使用celery执行某些任务失败的解决方案
查看>>
Python3+Requests+Unittest实战系列【一】
查看>>
python3+requests+unittest实战系列【一】
查看>>
python3+requests+unittest实战系列【二】
查看>>
Python3+Requests+Unittest实战系列【二】
查看>>
python3----ASCII
查看>>
Python3-selenium自动化测试框架,结合HTMLTestRunner测试报告!
查看>>
Python3-如何自我更新作为服务运行的应用程序
查看>>