Robot Framework+Appium之微信H5自动化测试

简介: 前言总会有人问微信的自动化测试怎么做。其实我不太明白,为啥你要对ta做自动化测试啊,除非你们公司产品是基于微信做的开发否则没必要。即使一个公众号我也觉得没必要做自动化测试,基本功能点下没问题就可以了,毕竟都是配置的,除非你后台配置错了。

前言

总会有人问微信的自动化测试怎么做。其实我不太明白,为啥你要对ta做自动化测试啊,除非你们公司产品是基于微信做的开发否则没必要。即使一个公众号我也觉得没必要做自动化测试,基本功能点下没问题就可以了,毕竟都是配置的,除非你后台配置错了。(有时候真搞不懂这胡乱的测试,你咋不把整个微信都测一遍啊)

本质

微信其实就是一个混合的app,客户端里嵌入的webview,明白这个就好说了。大家一定要注意,app中的native可以用uiaotumator来查看元素,但webview里的ta是不行的可以使用chrome来查看,这个是很多初学者不明白的地方。

一、微信NATIVE_APP界面中的元素

app原生元素定位(常用)

driver.find_element_by_id(“resourse-id”)

driver.find_element_by_name(“text”)

driver.find_element_class_name(“class”)

driver._find_element_by_accessibility_id("content-desc")

img_708068167ec7d6638be1d0d5babbb6ee.png
NATIVE_APP元素定位示例

二、微信webview页面中的元素定位

>手机打开【开发者模式】

>app必须是debug模式(别问我怎么弄,自己问开发去)

>手机通过USB连接电脑,且能够识别出来手机(不会的自己google去。。。)

>可以FQ。。。你懂的(真不懂的话看这里的杀手锏:Appium之离线方式连接真机

>具体打开调试操作步骤见《Appium之测试微信小程序 Webview》篇

img_62d6a34313efeca23c872628302de47b.png
webview 页面元素定位

三、Robot Framework + Appium代码实战

1、测试用例目录

img_7ab7390b9cc22558c05ad48a95fe2267.png
文件目录

2、测试用例

img_2f7713b94d33e9fe9ee42eb4db03629e.png
测试用例

3、关键字

img_aacd1b94072722c451c80b6465a7aa21.png
关键字

4、环境配置

img_88a3f258d489808adabd9a75843519d9.png
环境配置

5、创建目录步骤如下:

>首先双击打开robot.bat启动,然后创建文件夹并命名如下

img_903204c444aa2b3a7bc580998e1035dd.png
创建文件

>相关资源配置

img_2a4d09eebd4b5e60f990c8cc840967e8.png
资源配置1
img_40606001de7c547cd947e703a9353f10.png
资源配置2

>点击元素和输入文本框

img_6fd1e10df803d9f7b8bdd79ecce454e4.png
元素定位方法

>点击坐标和模拟键盘

img_d49aacb296e10bc49d15a05c998b130c.png
元素定位方法2

>页面包含元素和获取元素属性

img_2a3371aa9a5f67271754324f20ae9407.png
元素定位方法3

>滑动屏幕

img_df60613d7be6b3f955e13f35c3555bab.png
元素定位方法4

>执行N次循环并退出

img_f09f020f7b0cd6eccc5a313811237cc8.png
元素定位方法5

>执行N次循环

img_a33ea1a689856dfd5d085a2bc237249b.png
元素定位方法6

四、遇到的问题

本篇是使用小米5S、Android 7.0版本验证的,为此需要注意以下几点

1、在手机端‘设置--更多设置--开发者选项’分别打开按钮开关:1).开启开发者选项;2).USB调试;3).USB安装;4).USB调试(安全设置)

2、查看是否是webview页面NATIVE_APP页面可以打开手机端‘设置--更多设置--开发者选项---绘图中的‘显示布局边界’按钮’

3、【已解决】Chrome的DevTools的Inspect出错:404 Not Found The resource could not be found

img_374516777984e8cef3fd74cbebf729bb.png
404报错

4、Chrome调试Android应用(Debug)

目录
相关文章
|
6天前
|
敏捷开发 Java 测试技术
探索自动化测试的奥秘:从Selenium到Appium
【9月更文挑战第14天】软件测试,这个看似枯燥乏味却至关重要的领域,正经历着一场革命。随着技术的进步,自动化测试工具如Selenium和Appium已成为质量保证的利器。本文将带你一探这些工具的神秘面纱,了解它们如何简化测试流程、提升效率,并确保软件产品的质量。准备好,我们将深入自动化测试的世界,解锁其背后的原理和实践技巧。
|
30天前
|
机器人 测试技术 Python
作为测试人员,RobotFramework框架真的是必须掌握的吗?
本文探讨了Robot Framework(RF)作为自动化测试框架的重要性,指出虽然RF具有易用性和灵活性,但并非测试人员必须掌握的工具,因为存在许多可替代的自动化测试解决方案。
28 0
作为测试人员,RobotFramework框架真的是必须掌握的吗?
|
1月前
|
测试技术 Android开发 iOS开发
Appium 是一个开源的自动化测试框架,它支持多种平台和多种编程语言
Appium是一款开源自动化测试框架,支持iOS和Android多平台及多种编程语言。通过WebDriver协议,开发者可编写自动化测试脚本。在iPhone上实现屏幕点击等操作需安装Appium及其依赖,启动服务器,并设置所需的测试环境参数。利用Python等语言编写测试脚本,模拟用户交互行为,最后运行测试脚本来验证应用功能。对于iPhone测试,需准备真实设备或Xcode模拟器。
59 1
|
21天前
|
Java 测试技术 API
探索自动化测试的奥秘:从Selenium到Appium
【8月更文挑战第31天】本文旨在引导读者理解自动化测试的重要性,并逐步深入介绍如何利用Selenium和Appium这两个强大的工具来提升测试效率和质量。文章不仅分享理论知识,还通过具体代码示例,展示如何在Web应用和移动应用测试中实施自动化策略。
|
21天前
|
测试技术 Android开发 iOS开发
探索自动化测试的奥秘:从Selenium到Appium
【8月更文挑战第31天】在软件测试的海洋中,自动化测试如同一艘快艇,带领我们高效地穿越波涛汹涌的手动测试海域。本文将带你从Selenium的网页自动化测试出发,一路驶向Appium的移动应用自动化测试岛屿,揭秘这两种工具如何改变软件测试的航向。你将看到代码示例的灯塔,指引你理解它们如何在实战中发挥作用,以及为什么掌握这些技能对于测试人员来说至关重要。
|
21天前
|
Java 测试技术 Android开发
探索自动化测试之美:从Selenium到Appium
【8月更文挑战第31天】在软件开发的世界中,测试是确保产品质量的关键步骤。随着技术的发展,自动化测试工具如Selenium和Appium成为了开发者的得力助手。本文将通过一个简单的代码示例,带领读者了解如何利用这些工具进行高效的自动化测试,确保软件的稳定性和可靠性,同时也让测试过程变得更加轻松有趣。
|
3月前
|
测试技术
Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
|
4月前
|
数据采集 Java 开发工具
一文2500字从0到1教你搭建Android自动化python+appium环境
一文2500字从0到1教你搭建Android自动化python+appium环境
一文2500字从0到1教你搭建Android自动化python+appium环境
|
4月前
|
前端开发 JavaScript 测试技术
深入理解自动化测试框架:Selenium与Appium的比较
【5月更文挑战第29天】 在快速发展的软件行业中,自动化测试已成为保证软件质量和缩短发布周期的关键。本文深入分析了两个领先的自动化测试框架——Selenium和Appium,探讨了它们的核心原理、应用场景以及优缺点。通过细致的比较,为软件开发团队提供选择合适测试工具的参考依据,并强调了在不同环境下如何优化测试流程以提高测试效率和准确性。
|
12天前
|
Web App开发 Java 测试技术
自动化测试的利器:Selenium WebDriver入门与实践
【9月更文挑战第8天】在软件开发的海洋中,测试是确保我们不会溺水的那根救生索。Selenium WebDriver,作为自动化测试的明星工具,让这根救生索更加结实可靠。本文将带你快速上手Selenium WebDriver,从基础设置到实际操作,再到实战演练,让你的开发之旅更加平稳顺畅。