Airtest手机APP自动化--操作微信(小米11)

这篇具有很好参考价值的文章主要介绍了Airtest手机APP自动化--操作微信(小米11)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

感觉Appium太垃圾了,于是顺手学了下Airtest

  1. 安装并解压
    官网,有很显眼的下载按钮
    下载完zip文件后进行解压

  2. 启动自带AirtestIDE.exe
    Airtest手机APP自动化--操作微信(小米11)
    不想登录的可以跳过
    Airtest手机APP自动化--操作微信(小米11)
    因为提前通过数据线连接了手机和电脑了,所以一进去就显示已经连接到手机设备了
    当然启动完再用USB线连上也是没问题的
    Airtest手机APP自动化--操作微信(小米11)
    如果是之后插上手机的话,记得刷新
    Airtest手机APP自动化--操作微信(小米11)
    双击这个框,会开始连接,等待几秒出现手机界面,与真机是同步的
    Airtest手机APP自动化--操作微信(小米11)
    Airtest手机APP自动化--操作微信(小米11)
    对于某些手机,例如小米,在第一次使用Airtest时,请注意手机上将会弹出提示,询问你是否允许安装App,此时需要点击允许按钮。

  3. 打开微信

    # -*- encoding=utf8 -*-
    __author__ = "lyy"
    
    from airtest.core.api import *
    
    auto_setup(__file__)
    start_app("com.tencent.mm")
    

    Airtest手机APP自动化--操作微信(小米11)

  4. 定位
    Airtest手机APP自动化--操作微信(小米11)
    选完android会弹出这玩意,点yes,手机上也同意安装该应用
    Airtest手机APP自动化--操作微信(小米11)
    点完上面那个小标志后,光标移到那个手机界面上,就有组件详情了
    Airtest手机APP自动化--操作微信(小米11)

    Airtest手机APP自动化--操作微信(小米11)
    所以点击红点就写好了

    poco(name="com.tencent.mm:id/kmv").click()
    
  5. 在pycharm中运行这段代码
    安装相关依赖,东西有点多,要等一会
    pip install pocoui -i https://pypi.tuna.tsinghua.edu.cn/simple
    然后就可以直接把AirtestIDE里的代码直接粘贴过去了
    但是代码运行起来又要下东西,能咋办,下呗。。。

  6. 成果文章来源地址https://www.toymoban.com/news/detail-494983.html

    # -*- encoding=utf8 -*-
    __author__ = "lyy"
    
    from airtest.core.api import *
    from poco.drivers.android.uiautomation import AndroidUiautomationPoco
    import datetime
    
    poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)
    
    def response(text):
        if text == "现在什么时候了":
            return datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
        elif text == "感觉Airtest怎么样":
            return "只要安装exe就可以使用,很舒适,迁移到python上也只要pip装对应的包。速度也较快,但是IDE和接口的bug挺多,输入文本的API做的不太好,而且网上相关博客很少,社区不活跃"
        elif text == "你这个脚本的效果是什么":
            return "检测微信主页的可视范围内(不下滑时)的所有有未读信息的好友,判断他们的文本并进行回复"
        elif text == "你是谁":
            return "刘宇阳"
        elif text == "为什么能回复自己发的消息":
            return "因为左右两边的聊天框是同一类组件,区分起来有点麻烦;不区分也方便自己测试"
        else:
            return None
    
    
    if __name__ == '__main__':
        auto_setup(__file__)
        # 启动微信
        start_app("com.tencent.mm")
        print("开始监听")
        while True:
        	# 有带红点的未读新消息
            if poco(name="com.tencent.mm:id/kmv").exists():
                # 点击第一个红点
                poco(name="com.tencent.mm:id/kmv").click()
                # 查看聊天界面是否有消息
                if poco(name="com.tencent.mm:id/b4b").exists():
                    # 获得最新消息
                    target_msg = poco(name="com.tencent.mm:id/b4b")[-1].get_text()
                    resp = response(target_msg)
                    if resp != None:
                        # 输入内容
                        poco(resourceId="com.tencent.mm:id/kii").click()
                        # 使用Airtest的专用输入法Yosemite
                        # 异常捕获解决第一次打开Yosemite输入法报错
                        try:
                            text(resp, enter=False)
                        except:
                            text(resp, enter=False)
                        # 点击发送
                        poco(resourceId="com.tencent.mm:id/b8k").click()
                    # 点击返回到主页
                    poco(resourceId="com.tencent.mm:id/yn").click()
    

到了这里,关于Airtest手机APP自动化--操作微信(小米11)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 干货|移动端App自动化之触屏操作自动化

    工作中我们经常需要对应用的页面进行手势操作,比如滑动、长按、拖动等,AppiumDriver 为我们提供一个模拟手势操作的辅助类 TouchAction,可以通过它对手机屏幕进行手势操作。 具体用法参见链接:chromedriver下载地址与webview自动化关键代码 2 导入TouchAction 常用的手势操作 To

    2024年02月01日
    浏览(46)
  • 自动化测试工具airtest之上传文件或图片(web自动化上传图片)

    web自动化测试图片上传的方法: 第一种为当具有input标签时,如: input type=\\\"file\\\" name=\\\"file\\\" multiple=\\\"multiple\\\" 这类可以通过selenium中的send_keys()上传 直接实现: driver.find_element_by_css_selector(\\\"[type=\\\'file\\\']\\\").send_keys(r\\\"文件地址\\\")  第二种为当不是input标签时,将不能使用上述方法我们可以

    2024年02月06日
    浏览(40)
  • Python与Appium实现手机APP自动化测试的示例代码

    本文主要介绍了Python与Appium实现手机APP自动化测试的示例代码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 appium是一个开源的测试自动化框架,可以与原生的、混合的和移动的web应用程序一直使用。它使用WebDriver协议驱动IOS(内

    2024年01月24日
    浏览(48)
  • UI 自动化airtest-poco定位

    在iOS上使用Airtest进行UI自动化测试时,可以使用Poco进行UI元素的定位和操作。具体步骤如下: 1.安装Airtest和Poco库 在终端中输入以下命令进行安装: 2. 连接设备 使用USB线将iOS设备连接至电脑,并在终端中输入以下命令以确认设备是否成功连接: 3.使用poco进行元素定位 首先需

    2024年02月05日
    浏览(33)
  • Airtest:Windows桌面应用自动化测试【AirtestIDE功能】

    Airtest辅助窗(左上):这里主要是用来生成airtest框架中的代码的。 Poco辅助窗(左下):这个主要是用来抓取元素信息的,类似于Chrome F12查看Web元素、Appium Inspector查看App元素,并且可以生成Poco框架代码。 脚本编辑窗(中上):用来编写自动化代码,和所有IDE的相关功能类似。 Log查

    2024年02月10日
    浏览(35)
  • 【airtest】自动化入门教程(四)Poco元素定位

    目录 一、基础操作 1、通过属性名等方式  2、通过属性组合 3、子节点方式 4、子节点加属性组合方式 5、孙节点offspring 6、兄弟节点sibling 7、父节点parent 8、正则表达式 9、直到某个元素出现 10、直到某个元素消失 二、通过局部坐标定位 1、使用局部坐标系的click接口 2、使用

    2024年04月11日
    浏览(27)
  • 【自动化测试入门】用Airtest - Selenium对Firefox进行自动化测试(0基础也能学会)

    本文将详细介绍如何使用AirtestIDE驱动Firefox测试,以及脱离AirtestIDE怎么驱动Firefox(VScode为例)。看完本文零基础小白也能学会Firefox浏览器自动化测试!!! 对于Web自动化测试,目前AirtestIDE支持chrome浏览器和Firefox2种浏览器,今天我们重点聊一下,如何使用AirtestIDE驱动Firef

    2024年02月07日
    浏览(35)
  • 【APP自动化测试必知必会】Appium之微信小程序自动化测试

    H5 是指第 5 代 HTML ,也指用 H5 语言制作的一切数字产品。 所谓 HTML 是“超文本标记语言”的英文缩写。我们上网所看到网页,多数都是由 HTML 写成的。 “超文本”是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。而“标记”指的是 这些超文本必须由包含属性

    2024年02月09日
    浏览(90)
  • 自动化测试工具 AirTest 的使用方法与简介

    目录         前言: Airtest简介 1.基于图像识别的Airtest框架 2.基于UI识别的Poco框架 Airtest环境搭建 Airtest布局 Airtest使用步骤 第一步:连接移动设备 第二步:创建一个.air文件(也就是我们的测试脚本) 第三步:用Airtest辅助窗口编辑第一个测试脚本 第四步:引入Poco Airtest常用

    2024年02月10日
    浏览(47)
  • 《共建开源》系列:Airtest-Framework - UI自动化框架系统

    Airtest- Framework 是 基于 unittest、Flask、Airtest 搭建的 开源的 UI 自动化框架系统 提供 HTTP API 接口,实现自动解析包名并自动执行 相应目录下的 Case 。 目前仅支持单台设备连接。 多个任务会自动排队处理。 Python = 3.8 1、下载项目: 2、进入项目目录: 3、安装依赖项 手机连接到

    2024年01月16日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包