微信小程序Minium自动化测试(三)
2023-03-15 21:59:50 时间
上篇讲到,元素定位这块,参考官方文档,个人觉得官网文档的示例讲的有点少。幸好微信官方提供了小程序示例代码,方便小伙伴们快速入手。
下载小程序示例代码:https://github.com/wechat-miniprogram/miniprogram-dem
获取单个元素
get_element():在当前页面查询控件, 如果匹配到多个结果, 则返回第一个匹配到的结
使用方式:
self.page.get_element("button", inner_text="获取用户信息").click()
scroll_to():滚动到指定高度
使用方式:
self.page.scroll_to(self.page.inner_size["height"]/2,500
等待时长
wait_data_contains():等待时长,默认为10s
使用方式:
self.page.wait_data_contains()
wait_for():等待直到指定的条件成立
使用方式:
self.page.wait_for()
页面跳转
navigate_to(url,params,is_wait_url_change):跳转到指定页面,支持绝对路径和相对路径。绝对路径的最前面为/,相对路径会被拼接在当前页面父节点的路径后面
使用方式:
self.app.navigate_to("/secPages/addMember/addMember")
switch_tab(url):跳转到tabBar页面。navigate_to()仅可跳转到非tabBar页面,因此,对于tabBar导航页面跳转,需要使用switch_tab(),跳转的同时会关闭其他所有非tabBar页面。
使用方式:
self.app.switch_tab("/pages/mainPackage/intelligent/intelligent")
选择器
<view id="main" class="page-p page-p-gap" style="text-align: center;"></view>
假如要查找像上面这一个元素的话,他的选择器会像是下面这样:
tageName + #id + .className
view#main.page-p.page-p-gap
或
view[id='main'][class='page-section page-section-gap']
输入框赋值
native_input_text() :赋值
使用方式:
self.native.input_text("小程序")
获取页面所有元素
wxml = self.page.get_element('page').inner_wxml # 获取顶层的page下的所有元素获
print(wxml)
断言
assertEqual(first,second):判断两个参数是否相等,相等返回success,不相等则返回fail。每次断言均会对当前页面进行截图,可在测试报告中查看断言时的小程序页面,从而更快速的定位问题
使用方式:
# 断言,查看是否已选择关机
select = self.page.get_elements("text.layout--value")
self.assertEqual(["照明","关机"],[select[0].inner_text,select[1].inner_text],msg="断言")
滚动
scroll_to:滚动到指定高度
使用方式:
self.page.scroll_to(300,500)
相关文章
- 硬核评测 | 小程序如何一键转快应用?
- 架构师之路:微服务技术选型
- 30万款App背后的支持 融云的全球化通信之旅
- 终于有人把前台、中台、后台都讲明白了
- 代码不止|Google 助你打造优质移动端用户体验
- 低代码的兴起,程序猿要拒绝还是拥抱
- FreeRTOS及其应用,万字长文,基础入门
- 广告收入提升超 50%,快手如何在海外“异军突起”
- 实战经验:Oracle DG 的归档缺失修复
- 手把手教你用前端实现短视频App(滑动切换)
- 鸿蒙应用开发之运行HelloWorld
- 使用 Sentry 监控你的Spring Boot应用
- 应用编译,计算机中一定要掌握的知识细节
- Shell应用:批量导入SQL文件,你还在复制粘贴文件名?
- 干货|SpringBoot JMS(ActiveMQ)API实践应用详解
- 开发跨设备的鸿蒙(HarmonyOS)App
- 牛掰了!鸿蒙与Android完美融合,将鸿蒙设备当Android设备用
- Spark学习之在集群上运行Spark
- Eureka讲解与应用
- 知识图谱的前景与挑战