CN108628741A - 网页页面测试方法、装置、电子设备和介质 - Google Patents
网页页面测试方法、装置、电子设备和介质 Download PDFInfo
- Publication number
- CN108628741A CN108628741A CN201810316068.9A CN201810316068A CN108628741A CN 108628741 A CN108628741 A CN 108628741A CN 201810316068 A CN201810316068 A CN 201810316068A CN 108628741 A CN108628741 A CN 108628741A
- Authority
- CN
- China
- Prior art keywords
- measured
- operation element
- page
- network address
- acquisition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种网页页面测试方法、装置、电子设备和介质。所述网页页面测试方法包括:采用自动化测试工具启动浏览器,并启动待测网址;获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;从所述获取的操作元素中选取待测操作元素;将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试,从而对网页进行有针对性的健壮性测试,判断所述待测网址的页面是否有报错信息;当所述待测网址的页面有报错信息时,输出所述报错信息,由于上述测试方案具有针对性,因此不会对待测试***的其他功能造成影响,从而保证了待测试***的稳定性及待测试***功能的完整性。
Description
技术领域
本发明涉及测试技术领域,尤其涉及一种网页页面测试方法、装置、电子设备和介质。
背景技术
现有技术方案中,针对待测试网页健壮性及稳定性的测试,通常集中在接口API(Application Programming Interface,应用程序编程接口)层,对于UI(User Interface,用户界面)层仅关注功能的完整性,而很少直接对UI层进行有针对性的健壮性测试。
发明内容
鉴于以上内容,有必要提供一种网页页面测试方法、装置、电子设备和介质,能对网页进行有针对性的健壮性测试,同时保证了待测试***的稳定性及待测试***功能的完整性。
一种网页页面测试方法,所述方法包括:
采用自动化测试工具启动浏览器,并启动待测网址;
获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;
从所述获取的操作元素中选取待测操作元素;
将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试;
判断所述待测网址的页面是否有报错信息;
当所述待测网址的页面有报错信息时,输出所述报错信息。
根据本发明优选实施例,所述操作元素包括以下一种或者多种的组合:
超链接元素、输入框元素、按钮元素、下拉选择框元素、单选按钮元素、多选框元素;
所述操作元素的操作事件包括以下一种或者多种的组合:
所述超链接元素对应的操作事件包括点击事件;及/或
所述输入框元素对应的操作事件包括输入随机文本事件、清空文本事件;及/或
所述按钮元素对应的操作事件包括点击事件;及/或
所述下拉选择框元素对应的操作事件包括选中一个选项事件;及/或
所述单选按钮元素对应的操作事件包括选中事件;及/或
所述多选框元素对应的操作事件包括选中事件。
根据本发明优选实施例,所述从所述获取的操作元素中选取待测操作元素包括以下一种或者多种的组合:
获取所述获取的操作元素的使用次数,并将使用次数大于或者等于预设次数的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的使用次数,将所述获取的操作元素的使用次数按照由多到少的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的错误率,并将错误率大于或者等于预设错误率的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的错误率,将所述获取的操作元素的错误率按照由高到低的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素;及/或
当获取到选取的待测操作元素后,获取所述选取的待测操作元素的关联操作元素,并将所述关联操作元素确定为所述待测操作元素;及/或
获取当前测试模块,及从所述获取的操作元素中获取所述当前测试模块对应的操作元素,并将所述对应的操作元素确定为所述待测操作元素,其中,所述当前测试模块对应一类用户群体。
根据本发明优选实施例,当所述待测网址的页面有报错信息时,所述方法还包括:
获取所述报错信息对应的日志;
通过所述自动化测试工具对所述日志进行截图,得到日志截图,并将所述日志截图保存至指定位置。
根据本发明优选实施例,所述方法还包括:
解析所述日志,得到错误点及错误点的类别;
根据所述错误点的类别,将每类的错误点发送至对应的维护人员。
根据本发明优选实施例,所述解析所述日志,得到错误点包括:
利用训练好的错误识别模型从所述日志中获取错误点。
根据本发明优选实施例,所述方法还包括:
在利用训练好的错误识别模型从所述日志中获取错误点前,训练所述错误识别模型;
所述训练所述错误识别模型包括:
配置所述不同错误类别的错误点的训练样本数据,将不同类别的训练样本数据分发到不同的文件夹里,从所述不同的文件夹中分别提取第一预设比例的训练样本数据训练错误识别模型,当生成的错误识别模型的准确率小于预设准确率时,增加所述不同错误类别的训练样本数据的获取比例,重复所述错误识别模型的训练过程,直到生成的错误识别模型的准确率大于或者等于所述预设准确率。
一种网页页面测试装置,所述装置包括:
启动单元,用于采用自动化测试工具启动浏览器,并启动待测网址;
获取单元,用于获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;
选取单元,用于从所述获取的操作元素中选取待测操作元素;
发送单元,用于将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试;
判断单元,用于判断所述待测网址的页面是否有报错信息;
输出单元,用于当所述待测网址的页面有报错信息时,输出所述报错信息。
根据本发明优选实施例,所述操作元素包括以下一种或者多种的组合:
超链接元素、输入框元素、按钮元素、下拉选择框元素、单选按钮元素、多选框元素;
所述操作元素的操作事件包括以下一种或者多种的组合:
所述超链接元素对应的操作事件包括点击事件;及/或
所述输入框元素对应的操作事件包括输入随机文本事件、清空文本事件;及/或
所述按钮元素对应的操作事件包括点击事件;及/或
所述下拉选择框元素对应的操作事件包括选中一个选项事件;及/或
所述单选按钮元素对应的操作事件包括选中事件;及/或
所述多选框元素对应的操作事件包括选中事件。
根据本发明优选实施例,所述选取单元具体用于:
获取所述获取的操作元素的使用次数,并将使用次数大于或者等于预设次数的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的使用次数,将所述获取的操作元素的使用次数按照由多到少的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的错误率,并将错误率大于或者等于预设错误率的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的错误率,将所述获取的操作元素的错误率按照由高到低的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素;及/或
当获取到选取的待测操作元素后,获取所述选取的待测操作元素的关联操作元素,并将所述关联操作元素确定为所述待测操作元素;及/或
获取当前测试模块,及从所述获取的操作元素中获取所述当前测试模块对应的操作元素,并将所述对应的操作元素确定为所述待测操作元素,其中,所述当前测试模块对应一类用户群体。
根据本发明优选实施例,所述获取单元,还用于当所述待测网址的页面有报错信息时,获取所述报错信息对应的日志;
所述装置还包括:
截图单元,用于通过所述自动化测试工具对所述日志进行截图,得到日志截图,并将所述日志截图保存至指定位置。
根据本发明优选实施例,所述装置还包括:
解析单元,用于解析所述日志,得到错误点及错误点的类别;
所述发送单元,还用于根据所述错误点的类别,将每类的错误点发送至对应的维护人员。
根据本发明优选实施例,所述解析单元解析所述日志,得到错误点包括:
利用训练好的错误识别模型从所述日志中获取错误点。
根据本发明优选实施例,所述装置还包括:
训练单元,用于在利用训练好的错误识别模型从所述日志中获取错误点前,训练所述错误识别模型;
所述训练单元训练所述错误识别模型包括:
配置所述不同错误类别的错误点的训练样本数据,将不同类别的训练样本数据分发到不同的文件夹里,从所述不同的文件夹中分别提取第一预设比例的训练样本数据训练错误识别模型,当生成的错误识别模型的准确率小于预设准确率时,增加所述不同错误类别的训练样本数据的获取比例,重复所述错误识别模型的训练过程,直到生成的错误识别模型的准确率大于或者等于所述预设准确率。
一种电子设备,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现所述网页页面测试方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现所述网页页面测试方法。
由以上技术方案可以看出,本发明采用自动化测试工具启动浏览器,并启动待测网址;获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;从所述获取的操作元素中选取待测操作元素;将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试,从而对网页进行有针对性的健壮性测试,判断所述待测网址的页面是否有报错信息;当所述待测网址的页面有报错信息时,输出所述报错信息,由于上述测试方案具有针对性,因此不会对待测试***的其他功能造成影响,从而保证了待测试***的稳定性及待测试***功能的完整性。
附图说明
图1是本发明网页页面测试方法的较佳实施例的流程图。
图2是本发明网页页面测试装置的较佳实施例的功能模块图。
图3是本发明实现网页页面测试方法的较佳实施例的电子设备的结构示意图。
主要元件符号说明
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
如图1所示,是本发明网页页面测试方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
所述网页页面测试方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital SignalProcessor,DSP)、嵌入式设备等。
所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
所述电子设备还可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量主机或网络服务器构成的云。
所述电子设备所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
S10,所述电子设备采用自动化测试工具启动浏览器,并启动待测网址。
具体地,计算机软件自动化测试技术Selenium WebDriver具有较强的可视化自动交互功能,通过编程来模拟人与网页的交互,从而触发动态数据加载,获取动态生成的数据。即Selenium WebDriver技术能够真实的模拟用户在网页上执行的操作,例如点击“查看更多”、“自动登录”、“点击链接”、“填写表单”、“滚动鼠标”、“鼠标拖拽”、“页面加载完成后向下滚动”、“点击翻页”、“截图保存”等功能时,实时地使用Ajax技术向服务器请求更多的数据,再使用JavaScript脚本动态生成内容并加载显示出来。
在本实施例中,用户调用Selenium后,通过Selenium工具打开浏览器,在浏览器中输入待测数据的网站的链接(URL),Selenium Web页面工具调用WebDriver的get()方法打开用户输入的待测数据的网站的Web页面。
例如:所述电子设备通过程序语言driver.get("http://www.XX")可以打开XX网址对应的网页页面,通过程序语言elem.clear()可以清除输入框数据,通过程序语言elem.send_keys(Keys.RETURN)可以模拟点击回车按钮,通过程序语言driver.close()可以关闭浏览器驱动等。
在本实施例中,WebDriver通过原生浏览器支持或者浏览器扩展直接控制浏览器。并且WebDriver是针对各个浏览器而开发,与浏览器的紧密集成可以支持创建更高级的测试,避免了JavaScript安全模型导致的限制。
S11,所述电子设备获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件。
在本实施例中,所述操作元素包括,但不限于以下一种或者多种的组合:
超链接元素、输入框元素、按钮元素、下拉选择框元素、单选按钮元素、多选框元素等等。
进一步地,对应于所述操作元素,所述操作元素的操作事件包括,但不限于以下一种或者多种的组合:
(1)所述超链接元素对应的操作事件包括点击事件。
例如:当所述电子设备获取到待测网址的页面上的操作元素为超链接元素后,所述电子设备获取所述超链接元素对应的操作事件为点击事件,也就是说,当所述电子设备获取到用户点击所述超链接元素的信号时,所述电子设备执行所述超链接对应的任务,从而链接到其他网页,或者是链接到所述待测网址的页面上的指定位置。
(2)所述输入框元素对应的操作事件包括输入随机文本事件、清空文本事件。
例如:当所述电子设备获取到待测网址的页面上的操作元素为输入框元素后,所述电子设备获取到所述输入框元素对应的操作事件为输入随机文本事件或者清空文本事件,则所述电子设备可以在所述输入框元素中输入文本,或者是清空文本。
(3)所述按钮元素对应的操作事件包括点击事件。
例如:当所述电子设备获取到待测网址的页面上的操作元素为按钮元素后,所述电子设备获取到所述按钮元素对应的操作事件为点击事件,也就是说,当所述电子设备获取到用户点击所述按钮元素的信号时,所述电子设备执行所述按钮元素对应的任务,例如:开始运行、暂停运行、停止运行等等。
(4)所述下拉选择框元素对应的操作事件包括选中某一选项事件。
例如:当所述电子设备获取到待测网址的页面上的操作元素为下拉选择框元素(如:所述下拉选择框元素包括选项A、选项B及选项C)后,所述电子设备获取到所述下拉选择框元素对应的操作事件为选中某一选项事件,也就是说,当所述电子设备获取到用户选中所述下拉选择框元素中的选项A后,所述电子设备将所述选项A作为所述用户的选择显示在所述待测网址的页面上。
(5)所述单选按钮元素对应的操作事件包括选中事件。
例如:当所述电子设备获取到待测网址的页面上的操作元素为单选按钮元素(如:所述单选按钮元素包括选项A、选项B及选项C)后,所述电子设备获取到所述单选按钮元素对应的操作事件为选中事件,也就是说,当所述电子设备获取到用户选中所述单选按钮元素中的所述选项A后,所述电子设备将所述选项A作为所述用户的选择显示在所述待测网址的页面上。
(6)所述多选框元素对应的操作事件包括选中事件。
例如:当所述电子设备获取到待测网址的页面上的操作元素为多选框元素(如:所述多选框元素包括选项A、选项B及选项C)后,所述电子设备获取到所述多选框元素对应的操作事件为选中事件,也就是说,当所述电子设备获取到用户选中所述多选框元素中的所述选项A及所述选项B后,所述电子设备将所述选项A及所述选项B作为所述用户的选择显示在所述待测网址的页面上。
当然,在其他实施例中,所述操作元素以及所述操作元素的操作事件也可以有其他形式,本发明不作限制。
S12,所述电子设备从所述获取的操作元素中选取待测操作元素。
优选地,所述电子设备从所述获取的操作元素中选取待测操作元素包括,但不限于以下一种或者多种的组合:
(1)所述电子设备获取所述获取的操作元素的使用次数,并将使用次数大于或者等于预设次数的操作元素确定为所述待测操作元素。
例如:所述电子设备获取所述获取的操作元素的使用次数后,所述电子设备即可将使用次数大于或者等于预设次数200次的操作元素确定为所述待测操作元素。
具体地,所述预设次数可以根据实际情况由用户进行自定义设置,本发明不作限制。
(2)所述电子设备获取所述获取的操作元素的使用次数,将所述获取的操作元素的使用次数按照由多到少的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素。
例如:所述电子设备获取所述获取的操作元素的使用次数,并将所述获取的操作元素的使用次数按照由多到少的顺序进行排序,所述电子设备将排在前预设位数前20位的操作元素确定为所述待测操作元素。
具体地,所述预设位数可以根据实际情况由用户进行自定义设置,本发明不作限制。
(3)所述电子设备获取所述获取的操作元素的错误率,并将错误率大于或者等于预设错误率的操作元素确定为所述待测操作元素。
例如:所述电子设备获取所述获取的操作元素的错误率后,所述电子设备将错误率大于或者等于预设错误率75%的操作元素确定为所述待测操作元素。
具体地,所述预设错误率可以根据实际情况由用户进行自定义设置,本发明不作限制。
(4)所述电子设备获取所述获取的操作元素的错误率,将所述获取的操作元素的错误率按照由高到低的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素。
例如:所述电子设备获取所述获取的操作元素的错误率,并将所述获取的操作元素的错误率按照由高到低的顺序进行排序,所述电子设备将排在前预设位数前20位的操作元素确定为所述待测操作元素。
具体地,所述预设错误率可以根据实际情况由用户进行自定义设置,本发明不作限制。
(5)当获取到选取的待测操作元素后,所述电子设备获取所述选取的待测操作元素的关联操作元素,并将所述关联操作元素确定为所述待测操作元素。
例如:当获取到选取的待测操作元素X后,所述电子设备获取所述待测操作元素X的关联操作元素为Y及Z,所述电子设备同时将所述Y及Z确定为所述待测操作元素。
(6)所述电子设备获取当前测试模块,所述当前测试模块对应一类用户群体,所述电子设备从所述获取的操作元素中获取所述当前测试模块对应的操作元素,并将所述对应的操作元素确定为所述待测操作元素。
具体地,所述待测网址上有多个模块,每个模块对应不同的用户群体,例如一个金融类网址中,有个人使用的个人用户模块、企业使用的企业用户模块。在测试的时候,可以只测试一个模块。
例如:如果所述电子设备获取到当前测试模块为W,再从所述获取的操作元素中获取所述W对应的操作元素,所述电子设备将所述对应的操作元素确定为所述待测操作元素。
可以理解的是,由于一个页面上可以包括大量的操作元素,但是有些操作元素是用户几乎不会用到的,因此,通过上述(1)-(2)的方式可以筛选出使用频率较高的操作元素作为所述待测操作元素;又由于有些操作元素是出错率很低或者是不出错的,因此,通过上述(3)-(4)的方式可以筛选出错误率较高的操作元素作为所述待测操作元素;又由于有些操作元素间是相互关联的,当执行完一个操作元素的操作事件后,将继续执行关联的操作元素的操作事件,因此,通过上述(5)的方式可以直接将关联的操作事件确定为所述待测操作元素,避免复杂的筛选过程;又由于一个测试模块中只需对应测试一个页面上的部分操作元素,因此,通过上述(6)的方式可以直接调取当前测试模块对应的操作事件作为所述待测操作元素。
这样,既可以避免由于多余的测试工作影响测试的效率,又可以节约测试的成本。
S13,所述电子设备将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试。
通过上述实施方式,所述电子设备根据所述待测操作元素及所述待测操作元素的操作事件,即可对所述待测网址的页面进行测试,测试方法不作限制。
例如:所述电子设备可以将选取的待测操作元素超链接元素,及所述超链接元素对应的操作事件点击事件发送至所述待测网址的页面进行测试。
S14,所述电子设备判断所述待测网址的页面是否有报错信息。
在本实施例中,当所述待测网址的页面有错误时,所述电子设备将发出报错信息。
例如:当对所述超链接元素进行点击操作时,如果没有链接到其他网页,或者是链接到所述待测网址的页面上的指定位置,则说明在所述待测网址的页面中,所述超链接元素位置出现错误,所述电子设备将发出报错信息。
具体地,所述报错信息可能以提示框的形式显示在所述页面上,也可能以预设标记显示在所述页面上,本发明不作限制。
S15,当所述待测网址的页面有报错信息时,所述电子设备输出所述报错信息。
优选地,当所述待测网址的页面有报错信息时,所述方法还包括:
所述电子设备获取所述报错信息对应的日志,通过所述自动化测试工具对所述日志进行截图,得到日志截图,所述电子设备将所述日志截图保存至指定位置。
具体地,Selenium工具的驱动程序指示浏览器执行命令,最后由浏览器在内核中进行截图保存操作,最终的效果与用户使用鼠标在页面上截取图片并保存的效果完全相同。
进一步地,所述电子设备将所述日志截图保存至指定位置(如指定文件夹)后,还可以根据所述日志截图的内容或者时间等信息为所述日志截图命名,方便后续对所述日志截图进行查询。
优选地,所述电子设备解析所述日志,得到错误点及错误点的类别,并根据所述错误点的类别,将每类的错误点发送至对应的维护人员。
优选地,所述电子设备解析所述日志,得到错误点包括:
所述电子设备利用训练好的错误识别模型从所述日志中获取错误点。
在本实施例中,所述电子设备训练所述错误识别模型包括:
所述电子设备配置所述不同错误类别的错误点训练样本数据,将不同类别的训练样本数据分发到不同的文件夹里。例如,第一类别的训练样本数据的分发到第一文件夹里;第二类别的训练样本数据分发到第二文件夹里;第三类别的训练样本数据分发到第三文件夹里;第四类别的训练样本数据分发到第四文件夹里。所述电子设备从不同文件夹下各提取第一预设比例,例如,70%的训练样本数据作为训练数据进行所述错误识别模型的训练,所述电子设备从不同文件夹下各取剩下的第二预设比例,例如,30%的训练样本数据作为测试数据以对生成的所述错误识别模型进行准确性验证。
若生成的所述错误识别模型准确率小于预设准确率,例如,99%,则所述电子设备增加所述不同类别的训练样本数据的获取数量,重复上述所述错误识别模型的生成过程,直到生成的所述错误识别模型准确率大于等于预设准确率,例如,99%。
通过上述实施方式,可以将对应类别的错误信息发送给对应的维护人员,不仅更加有针对性,同时提高了维护效率,节约了由于匹配维护人员造成的时间损失。
例如:当确定错误类别为H时,所述电子设备获取H对应的维护人员I,所述电子设备将错误信息发送给所述维护人员I,以供所述维护人员I即时进行维护。
具体地,所述电子设备可以以短信或者邮件等方式将每类的错误信息发送至对应的维护人员,本发明不作限制。
综上所述,本发明能采用自动化测试工具启动浏览器,并启动待测网址;获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;从所述获取的操作元素中选取待测操作元素;将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试,从而对网页进行有针对性的健壮性测试,判断所述待测网址的页面是否有报错信息;当所述待测网址的页面有报错信息时,输出所述报错信息,由于上述测试方案具有针对性,因此不会对待测试***的其他功能造成影响,从而保证了待测试***的稳定性及待测试***功能的完整性。
如图2所示,是本发明网页页面测试装置的较佳实施例的功能模块图。所述网页页面测试装置11包括启动单元110、获取单元111、选取单元112、发送单元113、判断单元114、输出单元115、截图单元116、解析单元117及训练单元118。本发明所称的模块/单元是指一种能够被处理器13所执行,并且能够完成固定功能的一系列计算机程序段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
启动单元110采用自动化测试工具启动浏览器,并启动待测网址。
具体地,计算机软件自动化测试技术Selenium WebDriver具有较强的可视化自动交互功能,通过编程来模拟人与网页的交互,从而触发动态数据加载,获取动态生成的数据。即Selenium WebDriver技术能够真实的模拟用户在网页上执行的操作,例如点击“查看更多”、“自动登录”、“点击链接”、“填写表单”、“滚动鼠标”、“鼠标拖拽”、“页面加载完成后向下滚动”、“点击翻页”、“截图保存”等功能时,实时地使用Ajax技术向服务器请求更多的数据,再使用JavaScript脚本动态生成内容并加载显示出来。
在本实施例中,用户调用Selenium后,通过Selenium工具打开浏览器,在浏览器中输入待测数据的网站的链接(URL),Selenium Web页面工具调用WebDriver的get()方法打开用户输入的待测数据的网站的Web页面。
例如:所述启动单元110通过程序语言driver.get("http://www.XX")可以打开XX网址对应的网页页面,通过程序语言elem.clear()可以清除输入框数据,通过程序语言elem.send_keys(Keys.RETURN)可以模拟点击回车按钮,通过程序语言driver.close()可以关闭浏览器驱动等。
在本实施例中,WebDriver通过原生浏览器支持或者浏览器扩展直接控制浏览器。并且WebDriver是针对各个浏览器而开发,与浏览器的紧密集成可以支持创建更高级的测试,避免了JavaScript安全模型导致的限制。
获取单元111获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件。
在本实施例中,所述操作元素包括,但不限于以下一种或者多种的组合:
超链接元素、输入框元素、按钮元素、下拉选择框元素、单选按钮元素、多选框元素等等。
进一步地,对应于所述操作元素,所述操作元素的操作事件包括,但不限于以下一种或者多种的组合:
(1)所述超链接元素对应的操作事件包括点击事件。
例如:当所述获取单元111获取到待测网址的页面上的操作元素为超链接元素后,所述获取单元111获取所述超链接元素对应的操作事件为点击事件,也就是说,当所述获取单元111获取到用户点击所述超链接元素的信号时,所述电子设备执行所述超链接对应的任务,从而链接到其他网页,或者是链接到所述待测网址的页面上的指定位置。
(2)所述输入框元素对应的操作事件包括输入随机文本事件、清空文本事件。
例如:当所述获取单元111获取到待测网址的页面上的操作元素为输入框元素后,所述获取单元111获取到所述输入框元素对应的操作事件为输入随机文本事件或者清空文本事件,则所述电子设备可以在所述输入框元素中输入文本,或者是清空文本。
(3)所述按钮元素对应的操作事件包括点击事件。
例如:当所述获取单元111获取到待测网址的页面上的操作元素为按钮元素后,所述获取单元111获取到所述按钮元素对应的操作事件为点击事件,也就是说,当所述获取单元111获取到用户点击所述按钮元素的信号时,所述电子设备执行所述按钮元素对应的任务,例如:开始运行、暂停运行、停止运行等等。
(4)所述下拉选择框元素对应的操作事件包括选中某一选项事件。
例如:当所述获取单元111获取到待测网址的页面上的操作元素为下拉选择框元素(如:所述下拉选择框元素包括选项A、选项B及选项C)后,所述获取单元111获取到所述下拉选择框元素对应的操作事件为选中某一选项事件,也就是说,当所述获取单元111获取到用户选中所述下拉选择框元素中的选项A后,所述电子设备将所述选项A作为所述用户的选择显示在所述待测网址的页面上。
(5)所述单选按钮元素对应的操作事件包括选中事件。
例如:当所述获取单元111获取到待测网址的页面上的操作元素为单选按钮元素(如:所述单选按钮元素包括选项A、选项B及选项C)后,所述获取单元111获取到所述单选按钮元素对应的操作事件为选中事件,也就是说,当所述获取单元111获取到用户选中所述单选按钮元素中的所述选项A后,所述电子设备将所述选项A作为所述用户的选择显示在所述待测网址的页面上。
(6)所述多选框元素对应的操作事件包括选中事件。
例如:当所述获取单元111获取到待测网址的页面上的操作元素为多选框元素(如:所述多选框元素包括选项A、选项B及选项C)后,所述获取单元111获取到所述多选框元素对应的操作事件为选中事件,也就是说,当所述获取单元111获取到用户选中所述多选框元素中的所述选项A及所述选项B后,所述电子设备将所述选项A及所述选项B作为所述用户的选择显示在所述待测网址的页面上。
当然,在其他实施例中,所述操作元素以及所述操作元素的操作事件也可以有其他形式,本发明不作限制。
选取单元112从所述获取的操作元素中选取待测操作元素。
优选地,所述选取单元112从所述获取的操作元素中选取待测操作元素包括,但不限于以下一种或者多种的组合:
(1)所述选取单元112获取所述获取的操作元素的使用次数,并将使用次数大于或者等于预设次数的操作元素确定为所述待测操作元素。
例如:所述选取单元112获取所述获取的操作元素的使用次数后,所述选取单元112即可将使用次数大于或者等于预设次数200次的操作元素确定为所述待测操作元素。
具体地,所述预设次数可以根据实际情况由用户进行自定义设置,本发明不作限制。
(2)所述选取单元112获取所述获取的操作元素的使用次数,将所述获取的操作元素的使用次数按照由多到少的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素。
例如:所述选取单元112获取所述获取的操作元素的使用次数,并将所述获取的操作元素的使用次数按照由多到少的顺序进行排序,所述选取单元112将排在前预设位数前20位的操作元素确定为所述待测操作元素。
具体地,所述预设位数可以根据实际情况由用户进行自定义设置,本发明不作限制。
(3)所述选取单元112获取所述获取的操作元素的错误率,并将错误率大于或者等于预设错误率的操作元素确定为所述待测操作元素。
例如:所述选取单元112获取所述获取的操作元素的错误率后,所述选取单元112将错误率大于或者等于预设错误率75%的操作元素确定为所述待测操作元素。
具体地,所述预设错误率可以根据实际情况由用户进行自定义设置,本发明不作限制。
(4)所述选取单元112获取所述获取的操作元素的错误率,将所述获取的操作元素的错误率按照由高到低的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素。
例如:所述选取单元112获取所述获取的操作元素的错误率,并将所述获取的操作元素的错误率按照由高到低的顺序进行排序,所述选取单元112将排在前预设位数前20位的操作元素确定为所述待测操作元素。
具体地,所述预设错误率可以根据实际情况由用户进行自定义设置,本发明不作限制。
(5)当获取到选取的待测操作元素后,所述选取单元112获取所述选取的待测操作元素的关联操作元素,并将所述关联操作元素确定为所述待测操作元素。
例如:当获取到选取的待测操作元素X后,所述选取单元112获取所述待测操作元素X的关联操作元素为Y及Z,所述选取单元112同时将所述Y及Z确定为所述待测操作元素。
(6)所述选取单元112获取当前测试模块,所述当前测试模块对应一类用户群体,所述选取单元112从所述获取的操作元素中获取所述当前测试模块对应的操作元素,并将所述对应的操作元素确定为所述待测操作元素。
具体地,所述待测网址上有多个模块,每个模块对应不同的用户群体,例如一个金融类网址中,有个人使用的个人用户模块、企业使用的企业用户模块。在测试的时候,可以只测试一个模块。
例如:如果所述选取单元112获取到当前测试模块为W,再从所述获取的操作元素中获取所述W对应的操作元素,所述选取单元112将所述对应的操作元素确定为所述待测操作元素。
可以理解的是,由于一个页面上可以包括大量的操作元素,但是有些操作元素是用户几乎不会用到的,因此,通过上述(1)-(2)的方式可以筛选出使用频率较高的操作元素作为所述待测操作元素;又由于有些操作元素是出错率很低或者是不出错的,因此,通过上述(3)-(4)的方式可以筛选出错误率较高的操作元素作为所述待测操作元素;又由于有些操作元素间是相互关联的,当执行完一个操作元素的操作事件后,将继续执行关联的操作元素的操作事件,因此,通过上述(5)的方式可以直接将关联的操作事件确定为所述待测操作元素,避免复杂的筛选过程;又由于一个测试模块中只需对应测试一个页面上的部分操作元素,因此,通过上述(6)的方式可以直接调取当前测试模块对应的操作事件作为所述待测操作元素。
这样,既可以避免由于多余的测试工作影响测试的效率,又可以节约测试的成本。
发送单元113将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试。
通过上述实施方式,所述电子设备根据所述待测操作元素及所述待测操作元素的操作事件,即可对所述待测网址的页面进行测试,测试方法不作限制。
例如:所述发送单元113可以将选取的待测操作元素超链接元素,及所述超链接元素对应的操作事件点击事件发送至所述待测网址的页面进行测试。
判断单元114判断所述待测网址的页面是否有报错信息。
在本实施例中,当所述待测网址的页面有错误时,所述判断单元114将发出报错信息。
例如:当对所述超链接元素进行点击操作时,如果没有链接到其他网页,或者是链接到所述待测网址的页面上的指定位置,则说明在所述待测网址的页面中,所述超链接元素位置出现错误,所述判断单元114将发出报错信息。
具体地,所述报错信息可能以提示框的形式显示在所述页面上,也可能以预设标记显示在所述页面上,本发明不作限制。
当所述待测网址的页面有报错信息时,输出单元115输出所述报错信息。
优选地,当所述待测网址的页面有报错信息时,所述方法还包括:
所述获取单元111获取所述报错信息对应的日志,截图单元116通过所述自动化测试工具对所述日志进行截图,得到日志截图,所述截图单元116将所述日志截图保存至指定位置。
具体地,Selenium工具的驱动程序指示浏览器执行命令,最后由浏览器在内核中进行截图保存操作,最终的效果与用户使用鼠标在页面上截取图片并保存的效果完全相同。
进一步地,所述截图单元116将所述日志截图保存至指定位置(如指定文件夹)后,还可以根据所述日志截图的内容或者时间等信息为所述日志截图命名,方便后续对所述日志截图进行查询。
优选地,解析单元117解析所述日志,得到错误点及错误点的类别,所述发送单元113根据所述错误点的类别,将每类的错误点发送至对应的维护人员。
优选地,所述解析单元117解析所述日志,得到错误点包括:
所述解析单元117利用训练好的错误识别模型从所述日志中获取错误点。
在本实施例中,训练单元118训练所述错误识别模型包括:
所述训练单元118配置所述不同错误类别的错误点训练样本数据,将不同类别的训练样本数据分发到不同的文件夹里。例如,第一类别的训练样本数据的分发到第一文件夹里;第二类别的训练样本数据分发到第二文件夹里;第三类别的训练样本数据分发到第三文件夹里;第四类别的训练样本数据分发到第四文件夹里。所述训练单元118从不同文件夹下各提取第一预设比例,例如,70%的训练样本数据作为训练数据进行所述错误识别模型的训练,所述训练单元118从不同文件夹下各取剩下的第二预设比例,例如,30%的训练样本数据作为测试数据以对生成的所述错误识别模型进行准确性验证。
若生成的所述错误识别模型准确率小于预设准确率,例如,99%,则所述训练单元118增加所述不同类别的训练样本数据的获取数量,重复上述所述错误识别模型的生成过程,直到生成的所述错误识别模型准确率大于等于预设准确率,例如,99%。
所述发送单元113根据所述错误点的类别,将每类的错误点发送至对应的维护人员。
通过上述实施方式,可以将对应类别的错误信息发送给对应的维护人员,不仅更加有针对性,同时提高了维护效率,节约了由于匹配维护人员造成的时间损失。
例如:当确定错误类别为H时,所述发送单元113获取H对应的维护人员I,所述发送单元113将错误信息发送给所述维护人员I,以供所述维护人员I即时进行维护。
具体地,所述发送单元113可以以短信或者邮件等方式将每类的错误信息发送至对应的维护人员,本发明不作限制。
综上所述,本发明能采用自动化测试工具启动浏览器,并启动待测网址;获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;从所述获取的操作元素中选取待测操作元素;将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试,从而对网页进行有针对性的健壮性测试,判断所述待测网址的页面是否有报错信息;当所述待测网址的页面有报错信息时,输出所述报错信息,由于上述测试方案具有针对性,因此不会对待测试***的其他功能造成影响,从而保证了待测试***的稳定性及待测试***功能的完整性。
如图3所示,是本发明实现网页页面测试方法的较佳实施例的电子设备的结构示意图。
所述电子设备1是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述电子设备1还可以是但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(InternetProtocol Television,IPTV)、智能式穿戴式设备等。
所述电子设备1还可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。
所述电子设备1所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
在本发明的一个实施例中,所述电子设备1包括,但不限于,存储器12、处理器13,以及存储在所述存储器12中并可在所述处理器13上运行的计算机程序,例如网页页面测试程序。
本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备1还可以包括输入输出设备、网络接入设备、总线等。
所称处理器13可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器13是所述电子设备1的运算核心和控制中心,利用各种接口和线路连接整个电子设备1的各个部分,及执行所述电子设备1的操作***以及安装的各类应用程序、程序代码等。
所述处理器13执行所述电子设备1的操作***以及安装的各类应用程序。所述处理器13执行所述应用程序以实现上述各个网页页面测试方法实施例中的步骤,例如图1所示的步骤S10、S11、S12、S13、S14及S15。
或者,所述处理器13执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能,例如:采用自动化测试工具启动浏览器,并启动待测网址;获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;从所述获取的操作元素中选取待测操作元素;将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试;判断所述待测网址的页面是否有报错信息;当所述待测网址的页面有报错信息时,输出所述报错信息。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述电子设备1中的执行过程。例如,所述计算机程序可以被分割成启动单元110、获取单元111、选取单元112、发送单元113、判断单元114、输出单元115、截图单元116、解析单元117及训练单元118。
所述存储器12可用于存储所述计算机程序和/或模块,所述处理器13通过运行或执行存储在所述存储器12内的计算机程序和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备1的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器12可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述存储器12可以是电子设备1的外部存储器和/或内部存储器。进一步地,所述存储器12可以是集成电路中没有实物形式的具有存储功能的电路,如RAM(Random-AccessMemory,随机存取存储器)、FIFO(First In First Out,)等。或者,所述存储器12也可以是具有实物形式的存储器,如内存条、TF卡(Trans-flash Card)等等。
所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
结合图1,所述电子设备1中的所述存储器12存储多个指令以实现一种网页页面测试方法,所述处理器13可执行所述多个指令从而实现:采用自动化测试工具启动浏览器,并启动待测网址;获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;从所述获取的操作元素中选取待测操作元素;将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试;判断所述待测网址的页面是否有报错信息;当所述待测网址的页面有报错信息时,输出所述报错信息。
根据本发明优选实施例,所述操作元素包括以下一种或者多种的组合:
超链接元素、输入框元素、按钮元素、下拉选择框元素、单选按钮元素、多选框元素;
所述操作元素的操作事件包括以下一种或者多种的组合:
所述超链接元素对应的操作事件包括点击事件;及/或
所述输入框元素对应的操作事件包括输入随机文本事件、清空文本事件;及/或
所述按钮元素对应的操作事件包括点击事件;及/或
所述下拉选择框元素对应的操作事件包括选中一个选项事件;及/或
所述单选按钮元素对应的操作事件包括选中事件;及/或
所述多选框元素对应的操作事件包括选中事件。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
获取所述获取的操作元素的使用次数,并将使用次数大于或者等于预设次数的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的使用次数,将所述获取的操作元素的使用次数按照由多到少的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的错误率,并将错误率大于或者等于预设错误率的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的错误率,将所述获取的操作元素的错误率按照由高到低的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素;及/或
当获取到选取的待测操作元素后,获取所述选取的待测操作元素的关联操作元素,并将所述关联操作元素确定为所述待测操作元素;及/或
获取当前测试模块,及从所述获取的操作元素中获取所述当前测试模块对应的操作元素,并将所述对应的操作元素确定为所述待测操作元素,其中,所述当前测试模块对应一类用户群体。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
获取所述报错信息对应的日志;
通过所述自动化测试工具对所述日志进行截图,得到日志截图,并将所述日志截图保存至指定位置。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
解析所述日志,得到错误点及错误点的类别;
根据所述错误点的类别,将每类的错误点发送至对应的维护人员。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
利用训练好的错误识别模型从所述日志中获取错误点。
根据本发明优选实施例,所述处理器13还执行多个指令包括:
在利用训练好的错误识别模型从所述日志中获取错误点前,训练所述错误识别模型;
所述训练所述错误识别模型包括:
配置所述不同错误类别的错误点的训练样本数据,将不同类别的训练样本数据分发到不同的文件夹里,从所述不同的文件夹中分别提取第一预设比例的训练样本数据训练错误识别模型,当生成的错误识别模型的准确率小于预设准确率时,增加所述不同错误类别的训练样本数据的获取比例,重复所述错误识别模型的训练过程,直到生成的错误识别模型的准确率大于或者等于所述预设准确率。
具体地,所述处理器13对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。***权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种网页页面测试方法,其特征在于,所述方法包括:
采用自动化测试工具启动浏览器,并启动待测网址;
获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;
从所述获取的操作元素中选取待测操作元素;
将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试;
判断所述待测网址的页面是否有报错信息;
当所述待测网址的页面有报错信息时,输出所述报错信息。
2.如权利要求1所述的网页页面测试方法,其特征在于,所述操作元素包括以下一种或者多种的组合:
超链接元素、输入框元素、按钮元素、下拉选择框元素、单选按钮元素、多选框元素;
所述操作元素的操作事件包括以下一种或者多种的组合:
所述超链接元素对应的操作事件包括点击事件;及/或
所述输入框元素对应的操作事件包括输入随机文本事件、清空文本事件;及/或
所述按钮元素对应的操作事件包括点击事件;及/或
所述下拉选择框元素对应的操作事件包括选中一个选项事件;及/或
所述单选按钮元素对应的操作事件包括选中事件;及/或
所述多选框元素对应的操作事件包括选中事件。
3.如权利要求1所述的网页页面测试方法,其特征在于,所述从所述获取的操作元素中选取待测操作元素包括以下一种或者多种的组合:
获取所述获取的操作元素的使用次数,并将使用次数大于或者等于预设次数的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的使用次数,将所述获取的操作元素的使用次数按照由多到少的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的错误率,并将错误率大于或者等于预设错误率的操作元素确定为所述待测操作元素;及/或
获取所述获取的操作元素的错误率,将所述获取的操作元素的错误率按照由高到低的顺序进行排序,并将排在前预设位数的操作元素确定为所述待测操作元素;及/或
当获取到选取的待测操作元素后,获取所述选取的待测操作元素的关联操作元素,并将所述关联操作元素确定为所述待测操作元素;及/或
获取当前测试模块,及从所述获取的操作元素中获取所述当前测试模块对应的操作元素,并将所述对应的操作元素确定为所述待测操作元素,其中,所述当前测试模块对应一类用户群体。
4.如权利要求1所述的网页页面测试方法,其特征在于,所述方法还包括:
获取所述报错信息对应的日志;
通过所述自动化测试工具对所述日志进行截图,得到日志截图,并将所述日志截图保存至指定位置。
5.如权利要求4所述的网页页面测试方法,其特征在于,所述方法还包括:
解析所述日志,得到错误点及错误点的类别;
根据所述错误点的类别,将每类的错误点发送至对应的维护人员。
6.如权利要求5所述的网页页面测试方法,其特征在于,所述解析所述日志,得到错误点包括:
利用训练好的错误识别模型从所述日志中获取错误点。
7.如权利要求6所述的网页页面测试方法,其特征在于,所述方法还包括:
在利用训练好的错误识别模型从所述日志中获取错误点前,训练所述错误识别模型;
所述训练所述错误识别模型包括:
配置所述不同错误类别的错误点的训练样本数据,将不同类别的训练样本数据分发到不同的文件夹里,从所述不同的文件夹中分别提取第一预设比例的训练样本数据训练错误识别模型,当生成的错误识别模型的准确率小于预设准确率时,增加所述不同错误类别的训练样本数据的获取比例,重复所述错误识别模型的训练过程,直到生成的错误识别模型的准确率大于或者等于所述预设准确率。
8.一种网页页面测试装置,其特征在于,所述装置包括:
启动单元,用于采用自动化测试工具启动浏览器,并启动待测网址;
获取单元,用于获取所述待测网址的页面上的操作元素以及所述操作元素的操作事件;
选取单元,用于从所述获取的操作元素中选取待测操作元素;
发送单元,用于将所述待测操作元素及所述待测操作元素的操作事件发送至所述待测网址的页面进行测试;
判断单元,用于判断所述待测网址的页面是否有报错信息;
输出单元,用于当所述待测网址的页面有报错信息时,输出所述报错信息。
9.一种电子设备,其特征在于,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现如权利要求1至7中任意一项所述的网页页面测试方法。
10.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现如权利要求1至7中任意一项所述的网页页面测试方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810316068.9A CN108628741B (zh) | 2018-04-10 | 2018-04-10 | 网页页面测试方法、装置、电子设备和介质 |
PCT/CN2018/099282 WO2019196274A1 (zh) | 2018-04-10 | 2018-08-08 | 网页页面测试方法、装置、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810316068.9A CN108628741B (zh) | 2018-04-10 | 2018-04-10 | 网页页面测试方法、装置、电子设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108628741A true CN108628741A (zh) | 2018-10-09 |
CN108628741B CN108628741B (zh) | 2021-10-01 |
Family
ID=63705027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810316068.9A Active CN108628741B (zh) | 2018-04-10 | 2018-04-10 | 网页页面测试方法、装置、电子设备和介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108628741B (zh) |
WO (1) | WO2019196274A1 (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542763A (zh) * | 2018-10-16 | 2019-03-29 | 深圳壹账通智能科技有限公司 | 页面监测方法、装置、计算机设备和存储介质 |
CN109710528A (zh) * | 2018-12-25 | 2019-05-03 | 中国人民财产保险股份有限公司 | 一种测试脚本生成方法、装置、设备和介质 |
CN109783168A (zh) * | 2018-12-13 | 2019-05-21 | 平安科技(深圳)有限公司 | 个性化选择用户界面元素的方法、装置、介质、电子设备 |
CN109828900A (zh) * | 2018-12-14 | 2019-05-31 | 深圳壹账通智能科技有限公司 | 测试脚本自动生成方法、装置、电子设备及存储介质 |
CN110287108A (zh) * | 2019-05-31 | 2019-09-27 | 北京随信云链科技有限公司 | 一种页面测试方法、计算设备和存储介质 |
CN110781089A (zh) * | 2019-10-31 | 2020-02-11 | 睿云联(厦门)网络通讯技术有限公司 | 一种设备ui自动化测试方法、装置、电子设备和介质 |
CN111061526A (zh) * | 2019-10-12 | 2020-04-24 | 平安普惠企业管理有限公司 | 自动化测试方法、装置、计算机设备及存储介质 |
CN111258904A (zh) * | 2020-01-16 | 2020-06-09 | 恩亿科(北京)数据科技有限公司 | 一种网页元素测试方法和相关装置 |
CN111949510A (zh) * | 2019-05-17 | 2020-11-17 | 百度在线网络技术(北京)有限公司 | 测试处理方法、装置、电子设备及可读存储介质 |
CN111983429A (zh) * | 2020-08-19 | 2020-11-24 | Oppo广东移动通信有限公司 | 芯片验证***、芯片验证方法、终端及存储介质 |
CN112152823A (zh) * | 2019-06-26 | 2020-12-29 | 北京易真学思教育科技有限公司 | 网站运行错误监控方法、装置及计算机存储介质 |
CN112347244A (zh) * | 2019-08-08 | 2021-02-09 | 四川大学 | 基于混合特征分析的涉黄、涉赌网站检测方法 |
CN112579948A (zh) * | 2019-09-29 | 2021-03-30 | 北京国双科技有限公司 | 网页截图方法、装置及存储介质、电子设备 |
CN112631704A (zh) * | 2020-12-26 | 2021-04-09 | 深圳集智数字科技有限公司 | 一种界面元素识别方法、装置、存储介质及电子设备 |
CN112685253A (zh) * | 2020-12-29 | 2021-04-20 | 平安普惠企业管理有限公司 | 前端报错日志采集方法、装置、设备及存储介质 |
CN113254018A (zh) * | 2021-07-14 | 2021-08-13 | 广州易方信息科技股份有限公司 | 网页视图的自动化操作方法及装置 |
CN113342637A (zh) * | 2021-05-08 | 2021-09-03 | 深圳奥哲网络科技有限公司 | 基于元数据的应用测试方法、***、设备及存储介质 |
CN113656319A (zh) * | 2021-08-25 | 2021-11-16 | 广东三维家信息科技有限公司 | 一种回归测试方法、装置、电子设备及存储介质 |
CN115202762A (zh) * | 2022-09-13 | 2022-10-18 | 北京达佳互联信息技术有限公司 | 应用程序控制方法、装置、电子设备及存储介质 |
CN115426277A (zh) * | 2022-08-30 | 2022-12-02 | 杭州安恒信息技术股份有限公司 | 一种质量安全检测方法、装置、设备及可读存储介质 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104308A (zh) * | 2019-11-12 | 2020-05-05 | 贝壳技术有限公司 | 显示页面的测试方法和装置、存储介质、电子设备 |
CN111026648A (zh) * | 2019-11-21 | 2020-04-17 | 汉海信息技术(上海)有限公司 | 应用程序页面测试方法、装置、电子设备及存储介质 |
CN111045934A (zh) * | 2019-11-29 | 2020-04-21 | 北京三快在线科技有限公司 | 页面分析方法、装置、客户端、存储介质及电子设备 |
CN110888709A (zh) * | 2019-12-04 | 2020-03-17 | 中山市凯能集团有限公司 | 监控屏的智能操作方法、装置、计算机设备和存储介质 |
CN111159028B (zh) * | 2019-12-23 | 2023-08-01 | 望海康信(北京)科技股份公司 | 网页测试方法及装置 |
CN111488539B (zh) * | 2020-04-08 | 2023-04-21 | 中国银行股份有限公司 | 页面调整方法及装置 |
CN114077537A (zh) * | 2020-08-14 | 2022-02-22 | 福建天泉教育科技有限公司 | 一种ui自动化测试框架的优化方法及其*** |
CN112649717A (zh) * | 2020-09-15 | 2021-04-13 | 广州市几米物联科技有限公司 | 一种测试方法、装置、终端设备及存储介质 |
CN112231214B (zh) * | 2020-10-16 | 2023-09-26 | 百度国际科技(深圳)有限公司 | 页面测试方法、装置、电子设备和介质 |
CN112256984B (zh) * | 2020-10-22 | 2022-09-30 | 上海万物新生环保科技集团有限公司 | 一种网页对应的接口托底截图的获取方法及设备 |
CN112671615B (zh) * | 2020-12-29 | 2023-07-07 | 中国平安财产保险股份有限公司 | 前端用户操作行为数据的收集方法、***及存储介质 |
CN113760721A (zh) * | 2021-01-13 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种页面测试方法和装置 |
CN113238958A (zh) * | 2021-06-01 | 2021-08-10 | 广东好太太智能家居有限公司 | 一种大数据可视化平台的自动测试方法及装置、电子设备 |
CN113220596B (zh) * | 2021-06-17 | 2024-04-30 | 中国农业银行股份有限公司 | 应用的测试方法、装置、设备、存储介质及程序产品 |
CN113791968A (zh) * | 2021-08-10 | 2021-12-14 | 武汉光庭信息技术股份有限公司 | 一种ui自动化测试方法、***、电子设备及存储介质 |
CN114968687B (zh) * | 2022-06-09 | 2024-07-02 | 腾讯科技(深圳)有限公司 | 遍历测试方法、装置、电子设备、程序产品以及存储介质 |
CN115277396B (zh) * | 2022-08-04 | 2024-03-26 | 北京智慧星光信息技术有限公司 | 一种用于模拟浏览器操作的消息驱动方法和*** |
CN117370203B (zh) * | 2023-10-27 | 2024-07-02 | 华润数字科技有限公司 | 自动化测试方法、***、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102768641A (zh) * | 2012-06-15 | 2012-11-07 | 深圳中兴网信科技有限公司 | 网页测试要素选择装置和网页测试要素选择方法 |
CN103678120A (zh) * | 2013-11-12 | 2014-03-26 | 北京京东尚科信息技术有限公司 | 基于建模的web应用自动化测试方法 |
CN104461855A (zh) * | 2013-09-22 | 2015-03-25 | 腾讯科技(北京)有限公司 | 一种Web自动化测试方法、***及装置 |
US9336126B1 (en) * | 2014-06-24 | 2016-05-10 | Amazon Technologies, Inc. | Client-side event logging for heterogeneous client environments |
CN105653444A (zh) * | 2015-12-23 | 2016-06-08 | 北京大学 | 基于互联网日志数据的软件缺陷故障识别方法和*** |
CN105677615A (zh) * | 2016-01-04 | 2016-06-15 | 北京邮电大学 | 一种基于weka接口的分布式机器学习方法 |
CN106126413A (zh) * | 2016-06-16 | 2016-11-16 | 南通大学 | 基于两阶段包裹式特征选择的软件缺陷预测方法 |
CN107203464A (zh) * | 2016-03-17 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 业务问题的定位方法以及装置 |
CN107665165A (zh) * | 2016-07-27 | 2018-02-06 | 中兴通讯股份有限公司 | 背景噪声生成方法和装置、压力测试方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521121B (zh) * | 2011-11-18 | 2015-04-08 | 华为技术有限公司 | 一种页面测试方法和页面测试装置 |
US20140351796A1 (en) * | 2013-05-24 | 2014-11-27 | Microsoft Corporation | Accessibility compliance testing using code injection |
CN105843734B (zh) * | 2016-03-18 | 2019-03-15 | 厦门美图移动科技有限公司 | 一种自动化测试方法、装置及计算设备 |
-
2018
- 2018-04-10 CN CN201810316068.9A patent/CN108628741B/zh active Active
- 2018-08-08 WO PCT/CN2018/099282 patent/WO2019196274A1/zh active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102768641A (zh) * | 2012-06-15 | 2012-11-07 | 深圳中兴网信科技有限公司 | 网页测试要素选择装置和网页测试要素选择方法 |
CN104461855A (zh) * | 2013-09-22 | 2015-03-25 | 腾讯科技(北京)有限公司 | 一种Web自动化测试方法、***及装置 |
WO2015039566A1 (en) * | 2013-09-22 | 2015-03-26 | Tencent Technology (Shenzhen) Company Limited | Method and system for facilitating automated web page testing |
CN103678120A (zh) * | 2013-11-12 | 2014-03-26 | 北京京东尚科信息技术有限公司 | 基于建模的web应用自动化测试方法 |
US9336126B1 (en) * | 2014-06-24 | 2016-05-10 | Amazon Technologies, Inc. | Client-side event logging for heterogeneous client environments |
CN105653444A (zh) * | 2015-12-23 | 2016-06-08 | 北京大学 | 基于互联网日志数据的软件缺陷故障识别方法和*** |
CN105677615A (zh) * | 2016-01-04 | 2016-06-15 | 北京邮电大学 | 一种基于weka接口的分布式机器学习方法 |
CN107203464A (zh) * | 2016-03-17 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 业务问题的定位方法以及装置 |
CN106126413A (zh) * | 2016-06-16 | 2016-11-16 | 南通大学 | 基于两阶段包裹式特征选择的软件缺陷预测方法 |
CN107665165A (zh) * | 2016-07-27 | 2018-02-06 | 中兴通讯股份有限公司 | 背景噪声生成方法和装置、压力测试方法和装置 |
Non-Patent Citations (2)
Title |
---|
XIAO-YANG GUO 等: "Design and implementation of performance testing model for Web Services", 《IEEE》 * |
明仲 等: "一种Web***性能测试框架及其混合建模过程", 《计算机研究与发展》 * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542763A (zh) * | 2018-10-16 | 2019-03-29 | 深圳壹账通智能科技有限公司 | 页面监测方法、装置、计算机设备和存储介质 |
CN109783168A (zh) * | 2018-12-13 | 2019-05-21 | 平安科技(深圳)有限公司 | 个性化选择用户界面元素的方法、装置、介质、电子设备 |
CN109783168B (zh) * | 2018-12-13 | 2023-07-18 | 平安科技(深圳)有限公司 | 个性化选择用户界面元素的方法、装置、介质、电子设备 |
CN109828900A (zh) * | 2018-12-14 | 2019-05-31 | 深圳壹账通智能科技有限公司 | 测试脚本自动生成方法、装置、电子设备及存储介质 |
CN109710528A (zh) * | 2018-12-25 | 2019-05-03 | 中国人民财产保险股份有限公司 | 一种测试脚本生成方法、装置、设备和介质 |
CN109710528B (zh) * | 2018-12-25 | 2022-03-01 | 中国人民财产保险股份有限公司 | 一种测试脚本生成方法、装置、设备和介质 |
CN111949510B (zh) * | 2019-05-17 | 2024-05-14 | 百度在线网络技术(北京)有限公司 | 测试处理方法、装置、电子设备及可读存储介质 |
CN111949510A (zh) * | 2019-05-17 | 2020-11-17 | 百度在线网络技术(北京)有限公司 | 测试处理方法、装置、电子设备及可读存储介质 |
CN110287108A (zh) * | 2019-05-31 | 2019-09-27 | 北京随信云链科技有限公司 | 一种页面测试方法、计算设备和存储介质 |
CN112152823A (zh) * | 2019-06-26 | 2020-12-29 | 北京易真学思教育科技有限公司 | 网站运行错误监控方法、装置及计算机存储介质 |
CN112347244A (zh) * | 2019-08-08 | 2021-02-09 | 四川大学 | 基于混合特征分析的涉黄、涉赌网站检测方法 |
CN112579948A (zh) * | 2019-09-29 | 2021-03-30 | 北京国双科技有限公司 | 网页截图方法、装置及存储介质、电子设备 |
CN111061526A (zh) * | 2019-10-12 | 2020-04-24 | 平安普惠企业管理有限公司 | 自动化测试方法、装置、计算机设备及存储介质 |
CN111061526B (zh) * | 2019-10-12 | 2023-12-01 | 天航长鹰(江苏)科技有限公司 | 自动化测试方法、装置、计算机设备及存储介质 |
CN110781089A (zh) * | 2019-10-31 | 2020-02-11 | 睿云联(厦门)网络通讯技术有限公司 | 一种设备ui自动化测试方法、装置、电子设备和介质 |
CN111258904A (zh) * | 2020-01-16 | 2020-06-09 | 恩亿科(北京)数据科技有限公司 | 一种网页元素测试方法和相关装置 |
CN111983429A (zh) * | 2020-08-19 | 2020-11-24 | Oppo广东移动通信有限公司 | 芯片验证***、芯片验证方法、终端及存储介质 |
CN112631704A (zh) * | 2020-12-26 | 2021-04-09 | 深圳集智数字科技有限公司 | 一种界面元素识别方法、装置、存储介质及电子设备 |
CN112685253A (zh) * | 2020-12-29 | 2021-04-20 | 平安普惠企业管理有限公司 | 前端报错日志采集方法、装置、设备及存储介质 |
CN113342637A (zh) * | 2021-05-08 | 2021-09-03 | 深圳奥哲网络科技有限公司 | 基于元数据的应用测试方法、***、设备及存储介质 |
CN113254018A (zh) * | 2021-07-14 | 2021-08-13 | 广州易方信息科技股份有限公司 | 网页视图的自动化操作方法及装置 |
CN113656319A (zh) * | 2021-08-25 | 2021-11-16 | 广东三维家信息科技有限公司 | 一种回归测试方法、装置、电子设备及存储介质 |
CN115426277A (zh) * | 2022-08-30 | 2022-12-02 | 杭州安恒信息技术股份有限公司 | 一种质量安全检测方法、装置、设备及可读存储介质 |
CN115202762B (zh) * | 2022-09-13 | 2023-03-10 | 北京达佳互联信息技术有限公司 | 应用程序控制方法、装置、电子设备及存储介质 |
CN115202762A (zh) * | 2022-09-13 | 2022-10-18 | 北京达佳互联信息技术有限公司 | 应用程序控制方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2019196274A1 (zh) | 2019-10-17 |
CN108628741B (zh) | 2021-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628741A (zh) | 网页页面测试方法、装置、电子设备和介质 | |
US10650082B2 (en) | Collaborative virtual markup | |
US10466971B2 (en) | Generation of an application from data | |
CN111930370A (zh) | 可视化页面处理方法、装置、计算机设备和存储介质 | |
CN109388675A (zh) | 数据分析方法、装置、计算机设备及存储介质 | |
CN114330233A (zh) | 通过文件底版实现电子表单内容与文件相互关联的方法 | |
CN105335338B (zh) | 一种电子文档转换方法及装置 | |
CN112711418B (zh) | 多组件的前端界面布局方法、装置、电子设备和存储介质 | |
CN105894183A (zh) | 项目评价方法及装置 | |
US20110191381A1 (en) | Interactive System for Extracting Data from a Website | |
EP1830275A1 (en) | Information distribution system | |
US20200242195A1 (en) | Visual content optimization system using artificial intelligence (ai) based design generation and validation | |
CN107451112B (zh) | 表格工具数据检查方法、装置、终端设备及存储介质 | |
CN106951495A (zh) | 用于呈现信息的方法和装置 | |
CN109710250A (zh) | 一种用于构建用户界面的可视化引擎***及方法 | |
CN109634570A (zh) | 前后端集成开发方法、装置、设备及计算机可读存储介质 | |
CN101976394A (zh) | 数据采集和统计***及方法 | |
CN104182225A (zh) | 一种通用移动信息***适配方法与装置 | |
CN116663517A (zh) | 基于工作流表单***数据交互与输入内容单屏式操作方法 | |
CN104182226A (zh) | 一种通用移动信息***适配方法与装置 | |
CN108153465A (zh) | 基于企业SaaS应用的标签设置方法及装置 | |
CN117193745A (zh) | 一种组件组装和大语言模型结合的应用开发方法及装置 | |
CN104199648A (zh) | 一种通用移动信息***适配方法与装置 | |
CN109949090A (zh) | 客户推荐方法、装置、电子设备及介质 | |
CN111435300A (zh) | web***开发方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |