CN116028345A - 读取页面元素智能生成测试脚本的自动测试方法及*** - Google Patents
读取页面元素智能生成测试脚本的自动测试方法及*** Download PDFInfo
- Publication number
- CN116028345A CN116028345A CN202211409889.XA CN202211409889A CN116028345A CN 116028345 A CN116028345 A CN 116028345A CN 202211409889 A CN202211409889 A CN 202211409889A CN 116028345 A CN116028345 A CN 116028345A
- Authority
- CN
- China
- Prior art keywords
- test
- flow
- web page
- reading
- model library
- 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.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种读取页面元素智能生成测试脚本的自动测试方法及***用于解决现有技术中存在的技术问题之一。其包括以下步骤:S1、读取web页面中的html元素信息;S2、预设测试模型库,所述测试模型库中存储有若干通用测试流程,并将读取的web页面中的html元素信息与测试模型库匹配;S3、将测试模型库中所有与web页面中的html元素信息匹配的通用流程整合生成完整的测试总流程;S4、对测试总流程进行确认,并对需要调整的测试总流程进行编辑调整;S5、输出最终测试流程并转化为测试脚本后执行该最终测试流程对应的测试脚本。极大的提高了测试流程制作的效率,降低了自动测试工具的使用成本。
Description
技术领域
本发明涉及自动测试技术领域,具体涉及一种读取页面元素智能生成测试脚本的自动测试方法及***。
背景技术
WEB***开发项目中,测试工作的占比大和重要性高。越来越多的企业开始在测试中使用自动测试工具来提高测试效率,确保测试品质。
目前市场上有许多自动测试工具,这些工具都是在编写完测试脚本、或者录制完测试流程之后自动执行测试任务。这些测试工具虽然可以在测试执行方面提高效率,但是测试脚本的编写或测试流程的录制往往比人工测试更加耗费时间。对于一次制作反复执行的回归测试有较大效果很大,但对于单元测试、结合测试则的效果不佳。
发明内容
本发明针对现有技术中存在的技术问题,提供一种读取页面元素智能生成测试脚本的自动测试方法及***用于解决现有技术中存在的技术问题之一。
本发明解决上述技术问题的技术方案如下:一种读取页面元素智能生成测试脚本的方法,
其包括以下步骤:
S1、读取web页面中的html元素信息;
S2、预设测试模型库,所述测试模型库中存储有若干通用测试流程,并将读取的web页面中的html元素信息与测试模型库匹配;
S3、将测试模型库中所有与web页面中的html元素信息匹配的通用流程整合生成完整的测试总流程;
S4、对测试总流程进行确认,并对需要调整的测试总流程进行编辑调整;
S5、输出最终测试流程并转化为测试脚本后执行该最终测试流程对应的测试脚本。
在上述技术方案的基础上,本发明还可以作出如下改进。
可选的,所述步骤S1中读取的web页面中的html元素信息包括元素id、元素属性和属性值。
可选的,所述步骤S2中预设测试模型库的建立过程包括:
S21、梳理汇总web页面控件的信息;
S22、设定通用测试流程;
S23、在通用测试流程基础上,设定用于步骤S21中梳理出来的web页面控件测试的标准流程;
S24、建立基于步骤S21梳理汇总的web页面控件信息以及步骤S23设定的用于步骤S21中梳理出来的web页面控件测试的标准流程之间的关联关系,并形成完整的测试模型库,对外暴露接口。
可选的,在测试过程中,若识别到新的web页面控件信息时,追加新的测试流程到测试模型库。
可选的,步骤S21包括列出所有web页面的控件以及控件对应的属性,并把属性值定位参数,将读取的信息汇总成控件和属性全集表。
可选的,步骤S24中,对所有的关联关系中的数据分类、设置参数以及建立树状数据模型以便于调用。
可选的,web页面中任一组或任一行数据从测试模型库中匹配到的通用测试流程包括一个或多个,将这些匹配到的一个或多个通用测试流程整理成设定格式的测试任务集合,并结合关联关系对测试任务集合的所有数据进行排序、衔接和补全。
可选的,将经过排序、衔接和补全后的测试任务集合转换为测试流程集合,并将二维的测试流程集合转化为一维的测试流程串。
可选的,将一维测试流程串输出成测试机器人可执行的测试脚本。
根据本发明的第二方面,提供一种读取页面元素智能生成测试脚本的自动测试***,其包括存储器、处理器和通信电路,所述存储器和所述通信电路分别与所述处理器耦接,所述通信电路与所述处理器连接,所述通信电路在所述处理器的控制下与外部的终端设备进行数据交互;所述存储器包括本地储存,且存储有计算机程序;所述处理器用于运行所述计算机程序,以执行如以上所述的读取页面元素智能生成测试脚本的自动测试方法。
本发明的有益效果是:本发明提供的一种读取页面元素智能生成测试脚本的自动测试方法及***,将测试流程按测试对象类型进行分类,建立各个类型的标准测试流程的模型,结合参数让标准测试模型能够适用该类型控件的各种实际情况。测试模型库中预设大量的标准模型,让模型库能够匹配Web网页的几乎所有常用控件的测试需求。测试模型库的可增长性使技术方案能不断优化以适应未来变化的页面开发技术。极大的提高了测试流程制作的效率,降低了自动测试工具的使用成本。
附图说明
图1为本发明实施例的一种读取页面元素智能生成测试脚本的自动测试方法及***的原理示意框图。
图2为本发明实施例的一种读取页面元素智能生成测试脚本的自动测试方法及***运行流程示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
在本发明的描述中,除非另有规定和限定,需要说明的是,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
如图1和图2所示,本实施例公开了一种读取页面元素智能生成测试脚本的方法,其包括以下步骤:
S1、读取web页面中的html元素信息;
S2、预设测试模型库,所述测试模型库中存储有若干通用测试流程,并将读取的web页面中的html元素信息与测试模型库匹配;
S3、将测试模型库中所有与web页面中的html元素信息匹配的通用流程整合生成完整的测试总流程;
S4、对测试总流程进行确认,并对需要调整的测试总流程进行编辑调整;
S5、输出最终测试流程并转化为测试脚本后执行该最终测试流程对应的测试脚本。
可以理解的是,在本实施例中,提供了一种读取页面元素智能生成测试脚本的自动测试方法及***,将测试流程按测试对象类型进行分类,建立各个类型的标准测试流程的模型,结合参数让标准测试模型能够适用该类型控件的各种实际情况。测试模型库中预设大量的标准模型,让模型库能够匹配Web网页的几乎所有常用控件的测试需求。测试模型库的可增长性使技术方案能不断优化以适应未来变化的页面开发技术。极大的提高了测试流程制作的效率,降低了自动测试工具的使用成本。
具体的,在本实施例中,如图1所示,采用页面读取器来定义该web页面的信息读取设备,实际上其可以是任意可以实现web页面信息读取的辅助工具;即采用页面读取器来读取web页面中的元素信息,并分解元素属性以及属性值,然后将以上获取的信息输送到测试模型库,在该测试模型库中,预设有全面的测试流程,即通用测试流程,用于应对大部分控件的测试,然后根据读取的元素信息进行通用测试流程的匹配,匹配后通过对匹配出来的测试流程进行整合,汇总成测试总流程,其中,可以借助流程设计器,或者可以实现流程设计的其他辅助工具,对测试总流程进行确认,或者进行修改编辑等;最终输出到测试机器人进行测试流程的执行,最终输出测试报告。
在一种可选的实施例方式中,所述步骤S1中读取的web页面中的html元素信息包括元素id、元素属性和属性值。
可以理解的是,读取的web页面中的数据信息包括所有可以用于测试用途的需要的参数信息,这些参数信息可以基于设定的测试流程需要进行添加或减少,或者进行自定义编辑。
在一种可选的实施例方式中,所述步骤S2中预设测试模型库的建立过程包括:
S21、梳理汇总web页面控件的信息;
S22、设定通用测试流程;
S23、在通用测试流程基础上,设定用于步骤S21中梳理出来的web页面控件测试的标准流程;
S24、建立基于步骤S21梳理汇总的web页面控件信息以及步骤S23设定的用于步骤S21中梳理出来的web页面控件测试的标准流程之间的关联关系,并形成完整的测试模型库,对外暴露接口。
可以理解的是,在本实施例中,以上为测试模型库的建立流程,根据web页面内的控件的参数信息,建立通用测试流程或测试模型,基于此,还可能存在一些之前未出现或未被识别到的新的参数信息的情况,故而通过基于通用测试流程,可以针对性设计新的标准流程,并将其与控件的参数信息,结合匹配到的通用测试流程,根据参数信息的属性情况将各流程关联,并形成完整的测试模型库,并对外暴露接口以进行接入。
在一种可选的实施例方式中,在测试过程中,若识别到新的web页面控件信息时,追加新的测试流程到测试模型库。
可以理解的是,即测试模型库中的模型或流程可以基于需要测试的控件的类型的增加而变得丰富,每增加的测试模型或流程均存储在测试模型库汇总以便于下一次匹配调用和存储。
在一种可选的实施例方式中,步骤S21包括列出所有web页面的控件以及控件对应的属性,并把属性值定位参数,将读取的信息汇总成控件和属性全集表。步骤S24中,对所有的关联关系中的数据分类、设置参数以及建立树状数据模型以便于调用。
可以理解的是,在本实施例中,建立的该读取信息汇总成控件和属性的全集表,以及对数据进行分类以及建立树状数据模型均可以便于后续建立关联关系时的对应,便于识别和找到对应的关联项信息。
在一种可选的实施例方式中,web页面中任一组或任一行数据从测试模型库中匹配到的通用测试流程包括一个或多个,将这些匹配到的一个或多个通用测试流程整理成设定格式的测试任务集合,并结合关联关系对测试任务集合的所有数据进行排序、衔接和补全。将经过排序、衔接和补全后的测试任务集合转换为测试流程集合,并将二维的测试流程集合转化为一维的测试流程串。将一维测试流程串输出成测试机器人可执行的测试脚本。
可以理解的是,在实施例中,具体的测试模型库建立过程可以整理如下:
列出所有页面控件、以及控件对应的各种属性,并把属性值定位参数。汇总成控件&属性全集表。开发从***登陆、页面进入、页面退出等通用的测试流程,并将登陆的URL等***信息作为全局变量,用以接受每次测试的参数,确保不同的url都可以直接使用该流程。继承通用流程进入页面之后,根据参数@元素id定位到页面元素,再根据属性开发不同的执行流程。如针对属性“maxlength”,实现输入指定长度的操作。具体属性为传入的参数@propety、输入的长度值为传入的参数@value。根据常用的测试正常操作和异常操作,开发可能涉及到的所有测试流程,并根据不同结果做不同的断言。针对前述所有的控件都做如上的标准流程开发。以此形成标准流程集合。将前述汇总的控件&属性全集表与开发完成的流程数据之间建立关联关系,并对所有的关联数据通过分类、设置参数、建立树状模型,形成一套完整的模型库,并对外暴露接口。运用过程中,遇到新的网页控件类型以及属性时,追加新的测试模型加入模型库,已实现适应性优化。
其中一个实施例的具体的运行操作流程可以包括:
待测试***的相关通用设定:待测试***的url、浏览器版本、入口界面等基础设定。
通用测试流程设定:在当前测试任务页面开始读取分解之前,录制从***登陆到测试目标页面的整个跳转流程。形成测试任务的通用流程。
测试目标页面读取:手动操作进入到要测试的功能页面,然后用页面读取器读取目标网页。等待生成测试流程脚本。
通过测试流程设计器调整测试流程:用流程设计器打开上述生成的测试流程脚本,查看总测试流程的合理性,并可以根据需要增减测试阶段或测试操作,增减断言,调整输出物等。
如果不做特别测试,也可以不做任何调整。
使用测试机器人执行测试流程:查看测试机器人执行结果、确认测试分析报告。
在另一个实施例中,提供一种读取页面元素智能生成测试脚本的自动测试***,其包括存储器、处理器和通信电路,所述存储器和所述通信电路分别与所述处理器耦接,所述通信电路与所述处理器连接,所述通信电路在所述处理器的控制下与外部的终端设备进行数据交互;所述存储器包括本地储存,且存储有计算机程序;所述处理器用于运行所述计算机程序,以执行如以上所述的读取页面元素智能生成测试脚本的自动测试方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (10)
1.读取页面元素智能生成测试脚本的自动测试方法,其特征在于,其包括以下步骤:
S1、读取web页面中的html元素信息;
S2、预设测试模型库,所述测试模型库中存储有若干通用测试流程,并将读取的web页面中的html元素信息与测试模型库匹配;
S3、将测试模型库中所有与web页面中的html元素信息匹配的通用流程整合生成完整的测试总流程;
S4、对测试总流程进行确认,并对需要调整的测试总流程进行编辑调整;
S5、输出最终测试流程并转化为测试脚本后执行该最终测试流程对应的测试脚本。
2.根据权利要求1所述的读取页面元素智能生成测试脚本的自动测试方法,其特征在于,所述步骤S1中读取的web页面中的html元素信息包括元素id、元素属性和属性值。
3.根据权利要求2所述的读取页面元素智能生成测试脚本的自动测试方法,其特征在于,所述步骤S2中预设测试模型库的建立过程包括:
S21、梳理汇总web页面控件的信息;
S22、设定通用测试流程;
S23、在通用测试流程基础上,设定用于步骤S21中梳理出来的web页面控件测试的标准流程;
S24、建立基于步骤S21梳理汇总的web页面控件信息以及步骤S23设定的用于步骤S21中梳理出来的web页面控件测试的标准流程之间的关联关系,并形成完整的测试模型库,对外暴露接口。
4.根据权利要求3所述的读取页面元素智能生成测试脚本的自动测试方法,其特征在于,在测试过程中,若识别到新的web页面控件信息时,追加新的测试流程到测试模型库。
5.根据权利要求3所述的读取页面元素智能生成测试脚本的自动测试方法,其特征在于,步骤S21包括列出所有web页面的控件以及控件对应的属性,并把属性值定位参数,将读取的信息汇总成控件和属性全集表。
6.根据权利要求3所述的读取页面元素智能生成测试脚本的自动测试方法,其特征在于,步骤S24中,对所有的关联关系中的数据分类、设置参数以及建立树状数据模型以便于调用。
7.根据权利要求3所述的读取页面元素智能生成测试脚本的自动测试方法,其特征在于,web页面中任一组或任一行数据从测试模型库中匹配到的通用测试流程包括一个或多个,将这些匹配到的一个或多个通用测试流程整理成设定格式的测试任务集合,并结合关联关系对测试任务集合的所有数据进行排序、衔接和补全。
8.根据权利要求7所述的读取页面元素智能生成测试脚本的自动测试方法,其特征在于,将经过排序、衔接和补全后的测试任务集合转换为测试流程集合,并将二维的测试流程集合转化为一维的测试流程串。
9.根据权利要求8所述的读取页面元素智能生成测试脚本的自动测试方法,其特征在于,将一维测试流程串输出成测试机器人可执行的测试脚本。
10.读取页面元素智能生成测试脚本的自动测试***,其特征在于,其包括存储器、处理器和通信电路,所述存储器和所述通信电路分别与所述处理器耦接,所述通信电路与所述处理器连接,所述通信电路在所述处理器的控制下与外部的终端设备进行数据交互;所述存储器包括本地储存,且存储有计算机程序;所述处理器用于运行所述计算机程序,以执行如权利要求1-9任一项所述的读取页面元素智能生成测试脚本的自动测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211409889.XA CN116028345A (zh) | 2022-11-10 | 2022-11-10 | 读取页面元素智能生成测试脚本的自动测试方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211409889.XA CN116028345A (zh) | 2022-11-10 | 2022-11-10 | 读取页面元素智能生成测试脚本的自动测试方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116028345A true CN116028345A (zh) | 2023-04-28 |
Family
ID=86071487
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211409889.XA Pending CN116028345A (zh) | 2022-11-10 | 2022-11-10 | 读取页面元素智能生成测试脚本的自动测试方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116028345A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116990699A (zh) * | 2023-07-24 | 2023-11-03 | 北京三维天地科技股份有限公司 | 一种新能源电池检测方法和*** |
-
2022
- 2022-11-10 CN CN202211409889.XA patent/CN116028345A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116990699A (zh) * | 2023-07-24 | 2023-11-03 | 北京三维天地科技股份有限公司 | 一种新能源电池检测方法和*** |
CN116990699B (zh) * | 2023-07-24 | 2024-02-06 | 北京三维天地科技股份有限公司 | 一种新能源电池检测方法和*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110008113B (zh) | 一种测试方法、装置、电子设备 | |
CN110764753A (zh) | 一种业务逻辑代码生成方法、装置、设备及存储介质 | |
CN106293664A (zh) | 代码生成方法及装置 | |
CN105760296B (zh) | 自动化测试控制方法、装置及终端 | |
CN113420201B (zh) | 一种用于浏览器rpa***的跨域元素定位与树生成方法 | |
CN111596902B (zh) | 一种前后端开发框架的搭建方法、装置、设备及存储介质 | |
US20200241847A1 (en) | Recipe program code generation method and recipe compiling cloud platform system | |
CN110765010B (zh) | 基于Flink的可视化开发在线调试方法及装置 | |
CN106227654A (zh) | 一种测试平台 | |
CN116028345A (zh) | 读取页面元素智能生成测试脚本的自动测试方法及*** | |
CN111966580A (zh) | 基于人工智能的自动化测试方法、装置、设备和存储介质 | |
CN115658529A (zh) | 用户页面的自动化测试方法以及相关设备 | |
CN105591779A (zh) | 网元巡检方法及装置 | |
CN111737154A (zh) | 基于uft的车联网自动化测试方法及装置 | |
CN109669851A (zh) | 基于Selenium自动化的性能测试脚本录制方法 | |
CN114297961A (zh) | 一种芯片测试用例处理方法及相关装置 | |
CN106022580A (zh) | 一种覆盖智能变电站全过程的二次***资料管控方法 | |
CN112269569A (zh) | 一种可视化脚本在线编辑验证与自动化执行装置 | |
CN109299005B (zh) | 测试脚本的生成方法及装置 | |
CN115185489B (zh) | 一种时序数据算法组态***和方法 | |
CN116402325A (zh) | 业务流程自动化处理方法及装置 | |
CN115757174A (zh) | 一种数据库的差异检测方法及装置 | |
CN115344248A (zh) | 一种rpa开发字段编辑多样化方法 | |
CN113672509A (zh) | 自动化测试方法、装置、测试平台及存储介质 | |
CN113946509A (zh) | 埋点查找比对方法和设备,计算设备和可读存储介质 |
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 |