如何用python显示一个弹窗_appium golang

如何用python显示一个弹窗_appium golang以微信登录界面的toast弹窗为例:我的appium版本是1.17.1,服务器运行时日志有这样的打印信息所以我的desired_caps如下(如果是之前的版本,需要安装uiautomator2,并且在初始化时指定automationName为uiautomator2):desired_caps_a={‘platformName’:”Android”,’platFormVersion’:”10″,’d.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

在这里插入图片描述
以微信登录界面的toast弹窗为例:

我的appium版本是1.17.1,服务器运行时日志有这样的打印信息

在这里插入图片描述
所以我的desired_caps如下(如果是之前的版本,需要安装uiautomator2,并且在初始化时指定automationName为uiautomator2):

desired_caps_a = {'platformName': "Android",
                      'platFormVersion': "10",
                      'deviceName': "dd",
                      'udid': "648d4f29",
                      'automationName': "UiAutomator2",
                      'noReset': False,
                      'unicodeKeyboard': True,
                      'resetKeyboard': True,
                      'appPackage': "com.tencent.mm",
                      'appActivity': "com.tencent.mm.ui.LauncherUI",
                      'autoGrantPermissions': True,
                      'chromedriverExecutable': r"C:\Users\v_yddchen\Desktop\chromedriver_win32 77.0\chromedriver.exe",
                      'chromeOptions': {'androidProcess': "com.tencent.mm:toolsmp"}  # webview的进程名字,不然会报错
    }

填写登录信息,获取toast(有时来不及获取登录界面的toast信息,会拿到登录成功后,加载数据的toast):

device_a = webdriver.Remote("http://localhost:4723/wd/hub", desired_caps_a)
    my_logging = output_log(logging.DEBUG)
# toast弹窗处理
    device_a.find_element_by_android_uiautomator('new UiSelector().text("登录")').click()
    time.sleep(1)
    device_a.find_element_by_android_uiautomator('new UiSelector().textContains("用微信号")').click()
    time.sleep(1)
    username_input = device_a.find_element_by_android_uiautomator('new UiSelector().textContains("请填写微信号")')
    username_input.clear()
    username_input.send_keys('xxx')
    pwd_input = device_a.find_element_by_android_uiautomator('new UiSelector().textContains("请填写密码")')
    pwd_input.clear()
    pwd_input.send_keys('xxx')
    device_a.find_element_by_android_uiautomator('new UiSelector().text("登录")').click()
    toast_el = WebDriverWait(device_a, 5, 0.00001).\
        until(lambda x: x.find_element_by_xpath("//*[contains(@text,'正在')]"))
    # toast_el = WebDriverWait(device_a, 5, 0.000001).\
    #     until(lambda x: x.find_element_by_xpath('//*[@class="android.widget.Toast"]'))
    print(toast_el.text)
    device_a.quit()

当密码填写信息错误时,不管改定时器的间隔为多小,都找不到toast,比较奇怪。如果点击【登录】–登录完成,跳转,这个过程很短,也有可能获取不到toast。

看完点赞 ~养成好习惯,以上内容希望对你有帮助,如果对软件测试、接口测试、自动化测试、面试经验交流感兴趣可以加入我们。642830685,免费领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!技术大牛解惑答疑,同行一起交流。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189792.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月8日 下午5:15
下一篇 2026年3月8日 下午5:43


相关推荐

  • Webstorm 调试 JavaScript 代码

    Webstorm 调试 JavaScript 代码通常前端项目的 JavaScript 代码调试是通过浏览器的开发者工具 右键菜单中点击 检查 来完成 这种调试的方式的舒适度很差 显示页面的区域占了很大一块空间 留给调试窗口的空间很小 另外 浏览器开发者工具也不具备 IDE 代码跳转功能等 在不跳出 IDE 的情况下直接调试 JavaScript 代码 可以最大限度增加调试窗口 并在不写 console log 的情况下 通过直接在代码处显

    2026年3月19日
    1
  • MySql的Explain用法

    MySql的Explain用法MySqlsql 机读顺序索引哪些情况需要创建索引哪些情况不需要创建索引 explain 执行计划 sql 机读顺序索引索引是帮助 mysql 高效获取数据的数据结构 单值索引 一个索引只包含单个列 一个表可以有多个单列索引 唯一索引 索引列的值必须唯一 但允许有空值 复合索引 一个索引包含多个列 哪些情况需要创建索引主键自动建立唯一索引 频繁作为查询条件的字段 查询中与其他表关联的字段 哪些情况不需要创建索引频繁更新的字段 每次更新不只是更新记录也会更新索引 where 条件里用不到的字段

    2026年3月19日
    2
  • CSS 边框 阴影 效果

    CSS 边框 阴影 效果

    2022年2月2日
    64
  • 【YOLO学习】召回率(Recall),精确率(Precision),平均正确率(Average_precision(AP) ),交除并(Intersection-over-Union(IoU))

    在训练YOLOv2的过程中,系统会显示出一些评价训练效果的指标,包括Recall,IoU等等。为了怕以后忘了,现在把自己的理解记录一下。这一文章首先假设一个测试集,然后围绕这一测试集来介绍这几种指标的计算方式。

    2022年4月12日
    191
  • Vue基础知识总结 11:前端路由vue-router

    Vue基础知识总结 11:前端路由vue-router一、前端路由vue-router1、维基百科路由就是通过互联的网络把信息从源地址传输到目的地址的活动。2、路由的机制路由包括路由和转发。路由器->公网IP->映射表->内网IP映射表:[内网ip1:电脑标识1,内网ip2:电脑标识2]3、后端渲染JSP:javaserverpage后端渲染==html+css+javajava代码的作用是从数据库中读取数据,然后将他们动态的放在页面中。后端渲染的意思就是,前端请求后端,

    2022年7月11日
    29
  • JMeter下载安装及入门教程

    JMeter下载安装及入门教程目录JMeter介绍准备工作JMeter下载及环境配置下载环境配置JMeter中遇到的乱码问题JMeter介绍(参考:http://www.importnew.com/13876.html)JMeter使用了不同技术和协议,是一款可以进行配置和执行负载测试、性能测试和压力测试的工具。负载测试、性能测试和压力测试概念: 负载测试:这类测试使系统或者应用程序在…

    2022年6月6日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号