本教程操作环境:win7系统,JDK1.8,Appium,Python3.7,android-sdk,JDK,模拟器

1.Appium介绍

Appium是一个开源的自动化测试工具,其支持iOS和安卓平台上的原生的,基于移动浏览器的,混合的应用。

Appium是基于以下的四个理念设计来满足移动平台测试自动化的要求的:因为需要自动测试应用程序,所以必须以任何形式重新编译或修改应用程序。

不要把自己固定在特定的语言和特定的框架上,实现和运行测试。

说到测试自动化APIs,移动测试框架不应该重新发明轮子

移动测试的自动化框架应该开源,精神上,实际上,名义上!

2.使用步骤

(1)首先启动 Appium 和 模拟器,因为之前我们已经配置了 Appium,此时我们直接点击 Appium 的启动服务器按钮即可

(2)先通过 Python 来启动一下微信,代码实现如下:desired_caps ={"platformName": "Android", #操作系统

"deviceName": "emulator-5554", #设备 ID

"platformVersion": "6.0.1", #设备版本号

"appPackage": "com.tencent.mm", #app 包名

"appActivity": "com.tencent.mm.ui.LauncherUI", #app 启动时主 Activity

'noReset': True, #是否保留 session 信息,可以避免重新登录

'unicodeKeyboard': True, #使用 unicodeKeyboard 的编码方式来发送字符串

'resetKeyboard': True #将键盘给隐藏起来

}

driver= webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

执行上述代码之后,如果发现模拟器中的微信已经启动了,就说明基本环境已经调通了;如果执行代码后发现调不到模拟器中的微信,先在 cmd 中执行一下 adb connect 127.0.0.1:7555 命令,再执行程序即可。

(3)实现微信内信息的发送(实操)

打开微信->点击搜索输入框->输入文件传输助手->点击文件传输助手->点击文本输入框->输入文本->点击发送,功能的代码实现如下:importtimefrom appium importwebdriverif __name__ == '__main__':

desired_caps={"platformName": "Android", #操作系统

"deviceName": "emulator-5554", #设备 ID

"platformVersion": "6.0.1", #设备版本号

"appPackage": "com.tencent.mm", #app 包名

"appActivity": "com.tencent.mm.ui.LauncherUI", #app 启动时主 Activity

'noReset': True, #是否保留 session 信息,可以避免重新登录

'unicodeKeyboard': True, #使用 unicodeKeyboard 的编码方式来发送字符串

'resetKeyboard': True #将键盘给隐藏起来

}

driver= webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

time.sleep(5)print('点击微信搜索框')

driver.find_element_by_id('com.tencent.mm:id/f8y').click()

time.sleep(5)print('在搜索框输入搜索信息')

driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys('文件传输助手')

time.sleep(3)print('点击搜索到的内容')

driver.find_element_by_id('com.tencent.mm:id/gbv').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()#点击发送按钮发送信息

driver.find_element_by_id('com.tencent.mm:id/anv').click()#退出

driver.quit()

appium java模拟微信登录,python实战之结合Appium自动化操作微信相关推荐

  1. Java 模拟58登录

    Java 模拟 58登录 (一) 分析 标签(空格分隔): Java 实习期间需要做一个模拟58登录然后爬取简历,第一次做项目遇到很多坑 同时网上关于58登录的又没有很多资料,遇到了很多坑,这里记录一 ...

  2. Java 模拟58登录(二) 实现

    Java 模拟58登录(二) 实现 标签(空格分隔): Java 实习期间需要做一个模拟58登录然后爬取简历,之前已经写了一篇分析,现在具体实现过程 有关过程的分析,可以参考我的另一篇博客 Java ...

  3. Python实战 | 爬取并闪存微信群里的百度云资源

    需求背景: 需求: 涉及: 本篇文章目录: 爬取微信群聊信息里的网盘资源 爬取微信群聊信息可以用微信网页版的api,这里推荐一个高度封装,使用简单的工具:wxpy: 用 Python 玩微信 这是个不 ...

  4. python查微信好友是否删除自己_Python + Appium 自动化操作微信查找自己是否被删除...

    importtimefrom appium importwebdriver"""找出了删除我微信的所有人并将他们自动化删除了""" def ...

  5. java模拟微博登录_Python模拟微博登陆,亲测有效

    今天想做一个微博爬个人页面的工具,满足一些不可告人的秘密.那么首先就要做那件必做之事!模拟登陆-- 我对代码进行了优化,重构成了Python 3.6 版本,并且加入了大量注释方便大家学习. PC 登录 ...

  6. 微信登录 后台 java_Java 后端 (Spring boot)+微信小程序的授权登录

    微信小程序的授权登录 第一.Java后端代码如下 登录的接口的参数是微信小程序前端必须要传的参数微信小程序登录.授权的用户基本信息 wx.getUserInfo 特别注意 appid 和secret. ...

  7. 抖音微信登录服务器繁忙,抖音无法正常使用微信登录_抖音微信登陆失败解决方法_游戏吧...

    抖音出现了无法正常使用微信登陆的问题,很多小伙伴都非常的苦恼,这到底是怎么回事呢?下面游戏吧小编就为各位玩家带来了抖音微信登陆失败解决方法. 抖音微信登陆失败解决方法 1.登录的时候没有同意授权; 2 ...

  8. 【Node.js 微信公众号实战】3.Node.js 自定义微信菜单

    文章目录:         1.Node.js 接入微信公众平台开发         2.Node.js access_token的获取.存储及更新         3.Node.js 自定义微信菜单 ...

  9. Python的pyautogui模块,自动化操作的强大工具

    在Python当中,不仅代码简单,而且有着非常丰富的模块,pyautogui就可以称之为自动化操作的"神器". 为什么说是神器呢?百度的搜索的解释如下: PyAutoGUI是一个纯 ...

最新文章

  1. 商汤科技汤晓鸥:其实不存在AI行业,唯一存在的是“AI+“行业
  2. Java 快速排序算法实现-----面试
  3. linux软件包管理-rpm
  4. DC课程笔记-数字逻辑综合工具-DC Environment Attributes
  5. andriod studio怎么设置图片大小_Word图片大小总是对不齐,如何统一图片的大小位置,看一眼就会!...
  6. 数据库的关系运算和完整性约束
  7. centos6.5建立cloudera-cdh4.6本地源
  8. 当MySQL执行XA事务时遭遇崩溃,且看华为云如何保障数据一致性
  9. HTML实现选择数据库字段,django项目中在后台获取了数据库的某一列,如何将其显示在html模板中的select标签内的option选项下?...
  10. Leetcode142. Linked List Cycle II环形链表2
  11. C#中获得窗体的句柄
  12. sourcetree向github推送代码提示密码错误
  13. 全网最全讲解最详细的PS教程(第一期:基础教程1.0)
  14. 多种方法教你如何让手机免费上网
  15. 个人推荐一款并发测试工具
  16. ROS编译依赖配置问题记录
  17. 用Mathematica和SciPy阐明Jacobi椭圆函数的定义方法
  18. 周报|吉吉拍APP正式上架应用宝
  19. vue大文件上传断点续传解决方案
  20. altc财金网为你分享币圈波段操作技巧

热门文章

  1. 04_nand基本操作
  2. 财路网每日原创推送: 为什么音乐行业需要区块链技术
  3. 最经典的消息中间件:RabbitMQ
  4. php行业八卦,Phpwind肖睿哲:与网站主合作信任最重要
  5. 团体程序设计天梯赛-练习集 L1阶段 全部题解
  6. 微软和谷歌又要“打”起来了!网友:太好了
  7. springboot毕业设计 基于springboot校园二手交易网站系统毕业设计设计与实现参考
  8. 邓迪大学信息无障碍相关项目概要
  9. 虚拟机容器嵌合体—— Kata Containers正式走出实验室
  10. 白色网站比灰黑色网站的要好做点