• 13
  • 14
分享
  • appium小程序自动化测试——软件测试圈
  • 北极 2021-01-21 15:12:33 字数 1796 阅读 3070 收藏 14

配置要求:

工具

android:5.0以上

uc-devtools

adb

Chromedriver

手机环境配置

1.打开开发者模式(不懂的就百度),打开usb调试和安装

4.jpg

2.在windows中打开命令行,输入adb devices,可以看到手机驱动就行了

5.png

uc-devtools配置

1.下载好直接安装就行了,如果安装过程中缺少什么东东文件的话,就在C盘全局搜索出来复制到安装uc-devtools的文件夹就行了

2.安装完成后,需要在设置中选择本地资源

6.jpg

3。打开我们自带的浏览器,输入百度的网址,就能够看的到我们的页面了,点击inspect查看H5页面就行了(如果看不到的话,可能是浏览器内核问题)

7.jpg

8.jpg

Appium配置

1。我们可以看到浏览器的版本,然后我们需要下载对应的Chromedriver的版本,下载好后解压放到自己喜欢的文件夹下面即可

9.jpg

10.jpg

11.jpg

启动后,能够看到配置的chromedriver的配置即可

小程序X5内核浏览器

环境配置

1.使用微信浏览器进入debugx5.qq.com,勾选调试功能,如果进入页面不是这个X5调试的话,先跳过

1.jpg

2.如果进入的不是x5内核,先进入debugmm.qq.com/?forcex5=true

2.jpg

3.jpg


获取小程序的进程和名字

1.我们先使用微信进入一个小程序,比如我这边进入BOSS直聘(进入之前尽量把所有的程序都杀死,方便我们找到小程序)

adb shell dumpsys activity top | findstr ACTIVITY#获取正在运行的程序
adb shell ps pid# pid 从获取运行中的程序找到id

12.jpg

代码模块

desired_caps = {
    "platformName": "Android",
    # 键盘设置
    'unicodeKeyboard': True,    # 屏蔽软键盘
    # 'resetKeyboard': True,
    "platformVersion": "10",
    "deviceName": "bb03a20",
    "noReset": True,
    "appPackage": "com.tencent.mm",
    "appActivity": "com.tencent.mm.ui.LauncherUI",
    "recreateChromeDriverSession": True,
    # adb shell dumpsys activity top | findstr ACTIVITY    取出小程序进程id
    # adb shell ps pid 通过id获取进程名字
    "chromeOptions": {"androidProcess": "com.tencent.mm:appbrand0"},  # 小程序的进程名称
    "browserName": "",# 科教书说必须要有我实践没有也行,官网解释:要自动化的移动网络浏览器的名称。如果要自动执行应用,则应为空字符串。大意:如果执行手机浏览器的话,就放上浏览器名字,如果是内嵌H5的话,就空字符串;
    "automationName": "UiAutomator2"
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)
# 进入小程序步骤省略。。。
# 获取上下文
cons = driver.contexts
print(cons)#打印上下文
# 切换上下文到最后一个,PS:打开小程序后可能会出现很多个上下文,随便进一个都可以
driver.switch_to.context(cons[-1])
# 获取窗口句柄
hans = driver.window_handles
# 默认的句柄不是我们的小程序,我们需要切换窗口句柄
driver.switch_to.window(hans[-1])
# 切换成功后,就打印一下页面看看是不是我们的小程序,不是的话要么上下文切错了就是句柄切错了
print(driver.page_source)


作者:qq_42956206

原文链接:https://blog.csdn.net/qq_42956206/article/details/109328279#comments_14691026

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   现如今互联网行业飞速发展,IT行业也是水涨船高,软件行业的未来发展也是越来越好。而软件测试在软件行业可谓是一个必不可少的职业,它不仅算得上一个长青工作,而且也是一个在需求持续增长的职业。如果你已经入行软件测试了,那就沉住气继续努力下去,保持不断学习的习惯,你会越来越吃香,随着时间的增长和个人经验的不断增加,你在软件测试这个行业的眼光、见识、技能都会持续增长。据不完全统计,每年都有十多万的测试需求在增长,国内软件测试的人员缺口在持续增加,工作前景也比较好,想要入软件测试这行得趁早啦。 根据十来余年的工作经验和个人经历,有以下这么几点,只要你满足了,就大胆的进入软测这行即可:  1、有个大专以...
            0 0 1200
            分享
          • 一、Monkey简介Android系统自带monkey程序,模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。Monkey的使用是在产品稳定了,没有特别多的Bug时候。用monkey去测试待测应用的稳定性、健壮性(是否会发生闪退、崩溃),手机出厂前的整机测试。Monkey犹如其猴子的译名,就是杂乱无章的乱点,通过指定执行点击次数,不断的点击安卓系统,或者指定的App,给系统产生压力。注意:在使用Monkey之前,需要利用adb将PC端与安卓设备连接。二、monkey常见命令1.1、调出说明手册命令:adbshellmonkey–he...
            0 0 2327
            分享
          •   一、软件测试岗位有哪些?  在企业中,软件测试领域的几个典型的职位有:功能测试工程师(也叫手工测试)、自动化测试工程师、性能测试工程师、测试开发等。  1、功能测试(手工测试)工程师  主要工作内容:  · 需求分析  · 编写测试计划和测试方案  · 设计测试用例  · 执行测试用例  · 跟踪BUG  · 编写测试报告  2、自动化测试工程师  主要工作内容:  设计自动化测试的脚本,主要涉及到:  · 单元测试  · 接口测试  · UI测试  3、性能测试工程师  主要工作内容:  针对系统进行性能测试...
            0 0 530
            分享
          • 读者提问:开源云真机测试平台有推荐的吗 ?阿常回答:有,Sonic。官网地址:https://sonic-cloud.gitee.io/#/HomeGithub地址:https://github.com/SonicCloudOrg部署文档:https://sonic-cloud.gitee.io/#/Deploy使用文档:https://sonic-cloud.gitee.io/#/Document阿常碎碎念:Sonic 是一站式开源分布式集群云真机测试平台,致力服务于中小企业的客户端UI测试。它支持安卓设备、iOS设备、车载设备、智能手表等多种设备。如果想测试多机型兼容可...
            0 0 1576
            分享
          •   新浪科技讯北京时间2月28日早间消息,当地时间周一,Meta公司首席执行官马克·扎克伯格宣布,Meta将会组建一个顶级产品开发集团,专门关注内容生成式AI技术。  过去一段时间,科技行业普遍陷入增速放缓,上演了一场大规模裁员浪潮。面对行业低迷,一些科技企业也收缩了对新科技新产品的试验和“豪赌”。不过在一片阴霾之中,AI已成为科技行业大举投资的新亮点。  在Instagram帖子中,扎克伯格表示,Meta公司内部原来有很多研究生成式AI技术的团队,现在管理层开始把这些技术团队整合在一起,组建一个新的产品集团,目的是围绕这项技术开发出精彩的产品体验。  扎克伯格表示,Meta的长远目标是开发A...
            0 0 776
            分享
      • 51testing软件测试圈微信