[发明专利]一种小程序自动化测试方法有效
申请号: | 201811090663.1 | 申请日: | 2018-09-18 |
公开(公告)号: | CN109344058B | 公开(公告)日: | 2021-06-15 |
发明(设计)人: | 蒋晓海;王福涛 | 申请(专利权)人: | 北京云测信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;H04L29/06;H04L29/08 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 许志勇 |
地址: | 100016 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 程序 自动化 测试 方法 | ||
本发明公开了一种小程序自动化测试方法,通过手机里面的引擎和小程序通信,获取小程序当前页面元素,最后解析和过滤非当前页面元素,即获得当前界面的有效元素。通过PC端发送一条指令给手机里面的引擎,比如想要查找手机界面上的某个元素A,那么手机里面的引擎就会自动检索出来当前页面是否包含此元素A,从而可以实现小程序测试的自动化。由于可以通过PC将想要查找的元素发送给手机,因此可以查找任何需要的界面元素,从而可以实现测试的定制化。
技术领域
本申请涉及测试工具和安卓手机微信小程序的控制技术领域,尤其涉及一种小程序自动化测试方法。
背景技术
微信小程序,简称小程序,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。现在的小程序测试可以通过腾讯的TBS Studio工具,但是该工具是封闭的,不能实现定制化和自动化。所以一套可以实现小程序自动化测试的方法十分有必要。
发明内容
针对现有技术的不足,本发明旨在提供一种小程序自动化测试方法,可以实现小程序测试的自动化、定制化。
为了实现上述目的,本发明采用如下技术方案:
一种小程序自动化测试方法,包括如下步骤:
S1、将手机界面停留在微信小程序界面;
S2、手机引擎扫描UNIX Domain Socket,获取与微信小程序的进程通信的端口,得到微信小程序的多个端口号;
S3、手机引擎通过LocalSocket跨进程请求所有微信小程序的端口号,得到各端口号对应的页面详情,包括页面状态;
S4、获取页面的所有DOM内容:手机引擎请求页面详情里面的websocket地址,请求该websocket地址得到当前页面的所有元素;
S5、手机引擎过滤出隐藏的、内容空的页面元素、界面DOM非聚焦的状态以及非当前微信小程序的界面,得到当前界面的所有元素;
S6、录制书写测试逻辑时记录所需要的当前界面的关键元素,在进行自动化测试的时候,通过PC端向手机引擎发送关键元素的查找指令,手机引擎在步骤S5中得到的当前界面的所有元素中查找该关键元素,如果找到则当前界面即为期望的结果,否则直接报告错误。
进一步地,步骤S3中,所述页面状态包括页面的宽、高、显示、位置、websocket地址、描述。
进一步地,步骤S4具体通过js执行。
本发明的有益技术效果在于:
本发明方法通过手机里面的引擎和小程序通信,获取小程序当前页面元素,最后解析和过滤非当前页面元素,即获得当前界面的有效元素。通过PC端发送一条指令给手机里面的引擎,比如想要查找手机界面上的某个元素A,那么手机里面的引擎就会自动检索出来当前页面是否包含此元素A,从而可以实现小程序测试的自动化。由于可以通过PC将想要查找的元素发送给手机,因此可以查找任何需要的界面元素,从而可以实现测试的定制化。
本发明可以同时自动化测试小程序在不同的手机品牌和手机版本上的运行效果,大大节约了人力成本和时间,提高了测试的效率。
附图说明
图1为本发明实施例的方法原理示意图。
具体实施方式
以下将结合附图对本发明作进一步的描述,需要说明的是,以下实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
如图1所示,一种小程序自动化测试方法,包括如下步骤:
S1、将手机界面停留在微信小程序界面;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京云测信息技术有限公司,未经北京云测信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811090663.1/2.html,转载请声明来源钻瓜专利网。