CN116795727B - 一种测试过程的复现方法及装置、电子设备及存储介质 - Google Patents
一种测试过程的复现方法及装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116795727B CN116795727B CN202311079483.4A CN202311079483A CN116795727B CN 116795727 B CN116795727 B CN 116795727B CN 202311079483 A CN202311079483 A CN 202311079483A CN 116795727 B CN116795727 B CN 116795727B
- Authority
- CN
- China
- Prior art keywords
- target
- test
- data
- time
- reproduction
- 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.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 341
- 238000000034 method Methods 0.000 title claims abstract description 88
- 230000011218 segmentation Effects 0.000 claims description 15
- 238000010998 test method Methods 0.000 claims description 13
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000001174 ascending effect Effects 0.000 claims description 3
- 238000009877 rendering Methods 0.000 claims 3
- 230000006870 function Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 3
- 238000001545 Page's trend test Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000007488 abnormal function Effects 0.000 description 1
- 229940060321 after-bug Drugs 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Abstract
本发明提供了一种测试过程的复现方法及装置、电子设备及存储介质,该方法包括:接收目标测试设备进行代码数据测试得到的目标日志文件和目标操作视频;目标日志文件中包括若干测试操作信息,每一测试操作信息对应有目标操作数据和与目标操作数据对应的历史操作时间;获取目标测试设备进行代码数据测试的测试环境数据;配置测试复现环境;在测试复现环境中复现目标操作视频中的测试操作,以在复现显示界面上复现目标测试设备的测试过程。本发明通过将目标操作视频配置于测试复现环境中,以使复现显示界面复现目标测试设备的测试过程,并在复现操作界面上展示对应的目标操作数据,便于开发人员对bug的复现,减轻了测试人员的bug录入的工作量。
Description
技术领域
本发明涉及数据检测领域,特别是涉及一种测试过程的复现方法及装置、电子设备及存储介质。
背景技术
在软件开发测试过程中,测试人员在测试过程中发现bug(计算机的程序故障错误,指在软件运行中因为程序本身有错误而造成的功能不正常、死机、数据丢失、非正常中断等现象)后,需要手动记录并上传bug,然后分发给对应的开发人员进行解决,开发人员在接收到bug反馈后,需要构建环境并根据测试人员对bug的描述和截图进行手动bug复现,此复现方法较为繁琐,且在遇到一些需要特定情况下才会出现的bug时,传统的复现方法的处理过程较为乏力。
发明内容
有鉴于此,本发明提供一种测试过程的复现方法及装置、电子设备及存储介质,至少部分解决现有技术中存在的传统的复现方法的手动复现过程繁琐的技术问题,本发明采用的技术方案为:
根据本申请的一个方面,提供一种测试过程的复现方法,包括如下步骤:
接收目标测试设备进行代码数据测试得到的目标日志文件和目标操作视频并保存;目标日志文件中包括若干测试操作信息,每一测试操作信息对应有目标操作数据和与目标操作数据对应的历史操作时间;目标操作视频对应有若干历史操作时间;目标日志文件和目标操作视频均对应有目标测试设备标识;
根据目标测试设备标识,获取目标测试设备进行代码数据测试的测试环境数据;
根据测试环境数据,配置测试复现环境;测试复现环境中包括复现显示界面和复现操作界面;
识别目标操作视频中的测试操作,在测试复现环境中复现目标操作视频中的测试操作,以在复现显示界面上复现目标测试设备的测试过程;其中,在复现测试过程时,根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据。
在本申请的一种示例性实施例中,目标测试设备中设置有预设测试插件;
目标操作视频为预设测试插件执行以下步骤得到的:
录制目标测试设备对应的测试环境在t01至t02间进行代码数据测试的操作视频,并将其确定为第一操作视频;其中,t01为目标测试设备对应的测试环境进行代码数据测试的起始时间;t02为目标测试设备对应的测试环境进行代码数据测试的结束时间;
遍历若干目标操作数据,若目标操作数据为bug数据,则将其确定为目标截止数据,得到n个目标截止数据;
获取每一目标截止数据对应的历史操作时间,并根据历史操作时间的递增顺序,对n个目标截止数据对应的历史操作时间进行排序,得到第一时间节点集T=(t1,t2,...,ti,...,tn);其中,i=1,2,...,n;t1≥t01;tn≤t02;ti为根据历史操作时间的递增顺序进行排序后的第i个目标截止数据对应的历史操作时间;
根据第i个目标截止数据对应的故障类型,确定第i个目标截止数据对应的视频分割时间hi;
以ti-hi作为第i个目标截止数据的分割起始时间,以ti作为第i个目标截止数据的分割截止时间,对第一操作视频进行分割,得到第i个目标截止数据对应的操作视频,并将其确定为目标操作视频。
在本申请的一种示例性实施例中,根据第i个目标截止数据对应的故障类型,确定第i个目标截止数据对应的视频分割时间hi,包括:
若第i个目标截止数据对应的故障类型为预设故障类型,则设置hi为预设类型时间列表中与该预设故障类型对应的分割时间;否则,设置hi为预设分割时间;其中,预设类型时间列表中存储有每一预设故障类型对应的分割时间。
在本申请的一种示例性实施例中,目标测试设备通过预设测试插件配置用于进行代码数据测试的测试环境;
预设测试插件用于执行以下步骤:
实时监测对应的测试环境进行代码数据测试生成的目标操作数据;
若目标操作数据为目标截止数据,则向目标测试设备发送上传请求;
若接收到目标测试设备发送的复现请求,则将目标截止数据对应的目标日志文件和目标操作视频传输至目标测试设备。
在本申请的一种示例性实施例中,在测试复现环境中复现目标操作视频中的测试操作,以在复现显示界面上复现目标测试设备的测试过程,还包括:
根据每一历史操作时间,在目标操作视频上确定对应的暂停时间节点;
在复现显示界面中配置与每一暂停时间节点对应的暂停按键;
在复现测试过程时,当任一暂停按键被执行点击操作时,复现显示界面和复现操作界面暂停该暂停时间节点对应的画面。
在本申请的一种示例性实施例中,根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据,包括:
在复现测试过程时,获取当前复现的操作对应的目标操作时间;
根据每一目标操作数据对应的历史操作时间的递增顺序,对若干个目标操作数据进行排序,得到排序后目标操作数据列表Q1,Q2,...,Qm,...,Qj;其中,m=1,2,...,j;j为目标操作数据的数量;Qm为根据历史操作时间排序后的第m个目标操作数据;
将Q1,...,Qm确定为在复现操作界面上展示的与历史操作时间对应的目标操作数据,并在复现操作界面上展示;Qm对应的历史操作时间处于目标操作时间之后,且Qm-1对应的历史操作时间处于目标操作时间之前。
在本申请的一种示例性实施例中,在复现操作界面上展示历史操作时间对应的目标操作数据,还包括:
若在复现操作界面中已展示的Qm被执行点击操作,则将Q1,...,Qm对应的目标操作时间段的目标操作过程在复现显示界面中重新复现;其中,目标操作时间段为Q1对应的历史操作时间与Qm对应的历史操作时间之间的时间段。
根据本申请的一个方面,提供一种测试过程的复现装置,包括:
文件接收模块,用于接收目标测试设备进行代码数据测试得到的目标日志文件和目标操作视频并保存;目标日志文件中包括若干测试操作信息,每一测试操作信息对应有目标操作数据和与目标操作数据对应的历史操作时间;目标操作视频对应有若干历史操作时间;目标日志文件和目标操作视频均对应有目标测试设备标识;
数据获取模块,用于根据目标测试设备标识,获取目标测试设备进行代码数据测试的测试环境数据;
环境配置模块,用于根据测试环境数据,配置测试复现环境;测试复现环境中包括复现显示界面和复现操作界面;
操作复现模块,用于识别目标操作视频中的测试操作,在测试复现环境中复现目标操作视频中的测试操作,以在复现显示界面上复现目标测试设备的测试过程;其中,在复现测试过程时,根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据。
根据本申请的一个方面,提供一种非瞬时性计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现前述的测试过程的复现方法。
根据本申请的一个方面,提供一种电子设备,包括处理器和前述的非瞬时性计算机可读存储介质。
本发明至少具有以下有益效果:
本发明通过获取目标测试设备进行代码数据测试的测试环境数据,配置测试复现环境,使测试复现环境与测试环境的配置相同,可以直接利用测试复现环境的虚拟环境进行调试,无需开发人员手动对测试复现环境的构建,通过接收目标测试设备进行代码数据测试得到的目标日志文件和目标操作视频,并根据历史操作时间,获取目标日志文件对应的目标操作数据,将目标操作视频配置于测试复现环境中,以使复现显示界面复现目标测试设备的测试过程,并根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据,便于开发人员对bug的复现,与现有的复现方法相比,减轻了测试人员的bug录入的工作量。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的服务器的连接框图;
图2为本发明实施例提供的测试过程的复现方法的流程图;
图3为本发明实施例提供的目标操作视频的确定方法的流程图;
图4为本发明实施例提供的测试过程的复现装置的框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种测试过程的复现方法,应用于服务器,如图1所示,服务器通信连接有若干个测试设备,每一测试设备均对应有一测试设备标识,每一测试设备对应有一预设测试插件,测试设备通过对应的预设测试插件配置有测试环境,每一测试环境用于进行代码数据测试,服务器连接有数据库。
服务器为用于进行bug复现的服务器,测试设备为用于进行页面测试的服务器,为测试人员进行页面测试时所用的真实服务器,每个测试设备对应的测试设备标识用于表示其对应的测试设备,每个测试设备的测试内容可能不同,通过一个服务器,对若干个测试设备进行bug复现,当其中一个测试设备的测试环境出现bug后,其将带有测试设备标识的数据发送至服务器中,服务器通过接收到的数据对应的测试设备标识,得知发送的测试设备的位置,来获知产生bug的测试设备,无需每个测试设备均连接有一个复现的服务器,节省了资源,每个测试设备中有对应的预设测试插件,预设测试插件用于配置测试环境,即含有测试页面的测试机器对应的执行环境,代码数据测试即进行页面或网页测试,预设测试插件具有记录测试环境的各项环境信息功能、网络状态监测功能、录制键鼠操作功能、录制操作视频功能、监控网络请求功能等,其可以在发现bug时将相应的操作数据自动上传至对应的测试设备。
如图2所示,所述测试过程的复现方法包括如下步骤:
步骤S100、接收目标测试设备进行代码数据测试得到的目标日志文件和目标操作视频并保存至数据库中;目标日志文件中包括若干测试操作信息,每一测试操作信息对应有目标操作数据和与目标操作数据对应的历史操作时间;目标操作视频对应有若干历史操作时间;目标日志文件和目标操作视频均对应有目标测试设备标识;
目标测试设备标识为目标测试设备对应的测试设备标识;目标测试设备为任一测试设备;目标日志文件为目标测试设备对应的测试环境进行代码数据测试生成的测试操作日志文件;目标操作视频为目标测试设备对应的测试环境进行代码数据测试对应的测试操作视频,即通过预设测试插件对目标测试设备对应的测试环境测试的录制视频,当目标测试设备对应的测试环境进行测试时,预设测试插件会自动开启录制,记录在测试过程中的每个操作;当服务器接收到目标日志文件和目标操作视频时,先将其存储至数据库中,便于后续的数据调取,由于目标日志文件和目标操作视频中均有对应的测试设备的测试设备标识,所以,在数据库中存储有若干目标日志文件和若干目标操作视频时,服务器从数据库中根据测试设备标识调取相应的目标日志文件和目标操作视频,而不会存在数据混淆的情况。
目标日志文件中包括有每一目标操作数据对应的历史操作时间,目标操作视频对应有起始时间和结束时间,通过起始时间和结束时间,在目标日志文件中找到对应的历史操作时间,建立目标操作视频和目标日志文件的关联关系,便于在bug复现时的数据同步。
其中,目标测试设备通过以下步骤确定:
步骤S110、获取服务器接收到的若干操作视频;
步骤S111、将每一操作视频对应的测试设备标识确定为目标测试设备标识;
步骤S112、将目标测试设备标识对应的测试设备确定为目标测试设备。
服务器根据接收到的目标日志文件和目标操作视频中的目标测试设备标识,确定对应的目标测试设备,即将日志文件和操作视频发送至服务器的测试设备为目标测试设备。
其中,目标日志文件通过以下步骤确定:
步骤S120、获取目标测试设备对应的测试环境进行代码数据测试生成的若干目标操作数据;每一目标操作数据对应有历史操作时间;
步骤S121、根据若干目标操作数据和与其对应的历史操作时间,得到目标日志文件。
目标操作数据为目标测试设备进行测试所产生的操作数据,如鼠标的点击操作、键盘的输入数据、文件拖入操作、文件下载操作、页面跳转操作等,历史操作时间为对应的目标操作数据的执行时间,如在十一时二十分在测试页面的预设位置处输入了A文字,则输入的A文字即目标操作数据,十一时二十分即对应的历史操作时间,目标测试设备的预设测试插件会实时监测生成的目标操作数据,并将其与对应的历史操作时间上传至目标测试设备中,目标测试设备在接收到此次测试的第一个目标操作数据时,会生成一个目标日志文件,每当预设测试插件上传一个目标操作数据,目标日志文件则会存储一个对应的数据标识和该目标操作数据对应的历史操作时间,数据标识表示对应的目标操作数据的存储位置,便于通过查看目标日志文件,即可确定出对应的每个目标操作数据的存储位置。
步骤S200、根据目标测试设备标识,获取目标测试设备进行代码数据测试的测试环境数据;
测试环境数据为目标测试设备对应的测试环境的配置数据。
步骤S300、根据测试环境数据,配置测试复现环境;测试复现环境中包括复现显示界面和复现操作界面;
当服务器接收到测试环境数据时,部署测试环境版本的前端代码,完成后端mock服务自动搭建,构成完整的bug复现现场,搭建测试复现环境,测试复现环境与目标测试设备的测试环境相同,便于复现出与测试环境相同的执行环境。
步骤S400、识别目标操作视频中的测试操作,在测试复现环境中复现目标操作视频中的测试操作,以在复现显示界面上复现目标测试设备的测试过程;其中,在复现测试过程时,根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据;
进一步,步骤S400中,识别目标操作视频中的测试操作,包括:
步骤S401、获取目标操作视频的起始时间t03和结束时间t04;
步骤S402、根据t03对应的历史操作时间和t04对应的历史操作时间组成的操作时间段,确定目标日志文件与操作时间段对应的若干目标操作数据。
目标操作数据即目标操作视频对应的操作数据,目标日志文件与操作时间段对应的若干目标操作数据即目标操作视频中的测试操作对应的目标操作数据。
进一步,步骤S400中,在测试复现环境中复现目标操作视频中的测试操作,以在复现显示界面上复现目标测试设备的测试过程,还包括:
步骤S410、根据每一历史操作时间,在目标操作视频上确定对应的暂停时间节点;
步骤S411、在复现显示界面中配置与每一暂停时间节点对应的暂停按键;
步骤S412、在复现测试过程时,当任一暂停按键被执行点击操作时,复现显示界面和复现操作界面暂停该暂停时间节点对应的画面。
暂停时间节点为每一历史操作时间对应的节点,即目标操作数据进行完毕的时间节点,在目标操作视频的对应的时间节点设置暂停按键,便于bug复现时开发人员在目标操作视频播放时的暂停查看。
进一步,步骤S400中,根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据,包括:
步骤S420、在复现测试过程时,获取当前复现的操作对应的目标操作时间;
步骤S421、根据每一目标操作数据对应的历史操作时间的递增顺序,对若干个目标操作数据进行排序,得到排序后目标操作数据列表Q1,Q2,...,Qm,...,Qj;其中,m=1,2,...,j;j为目标操作数据的数量;Qm为根据历史操作时间排序后的第m个目标操作数据;
步骤S422、将Q1,...,Qm确定为在复现操作界面上展示的与历史操作时间对应的目标操作数据,并在复现操作界面上展示;Qm对应的历史操作时间处于目标操作时间之后,且Qm-1对应的历史操作时间处于目标操作时间之前。
Q1,...,Qm为目标操作视频当前播放的操作时间对应的目标操作数据,复现显示界面的目标操作视频在播放时,复现操作界面中显示对应的目标操作数据。
进一步,步骤S400中,在复现操作界面上展示历史操作时间对应的目标操作数据,还包括:
步骤S430、若在复现操作界面中已展示的Qm被执行点击操作,则将Q1,...,Qm对应的目标操作时间段的目标操作过程在复现显示界面中重新复现;其中,目标操作时间段为Q1对应的历史操作时间与Qm对应的历史操作时间之间的时间段。
当目标操作数据进行显示时,若开发人员需要进行操作回放,则可以点击对应的目标操作数据,复现显示界面上则会显示从最开始的目标操作数据至需要回放的目标操作数据对应的操作视频,便于开发人员对复现操作回放。
其中,目标测试设备对应的预设测试插件用于执行以下步骤:
步骤S010、实时监测对应的测试环境进行代码数据测试生成的目标操作数据;
步骤S011、若目标操作数据为目标截止数据,则向目标测试设备发送上传请求;
步骤S012、若接收到目标测试设备发送的复现请求,则将目标截止数据对应的目标日志文件和目标操作视频传输至目标测试设备。
进一步,目标测试设备用于执行以下步骤:
步骤S020、若接收到对应的预设测试插件发送的上传请求,则向服务器发送数据故障请求,数据故障请求包括目标测试设备对应的测试设备标识;
步骤S021、若在预设第一时间内,接收到服务器根据数据故障请求发送的传输标识,则向对应的预设测试插件发送复现请求;
步骤S022、若接收到对应的预设测试插件发送的目标截止数据对应的目标日志文件和目标操作视频,则将目标日志文件和目标操作视频传输至服务器。
如图3所示,目标操作视频为预设测试插件执行以下步骤得到的:
步骤S130、录制目标测试设备对应的测试环境在t01至t02间进行代码数据测试的操作视频,并将其确定为第一操作视频;其中,t01为目标测试设备对应的测试环境进行代码数据测试的起始时间;t02为目标测试设备对应的测试环境进行代码数据测试的结束时间;
步骤S131、遍历若干目标操作数据,若目标操作数据为bug数据,则将其确定为目标截止数据,得到n个目标截止数据;
步骤S132、获取每一目标截止数据对应的历史操作时间,并根据历史操作时间的递增顺序,对n个目标截止数据对应的历史操作时间进行排序,得到第一时间节点集T=(t1,t2,...,ti,...,tn);其中,i=1,2,...,n;t1≥t01;tn≤t02;ti为根据历史操作时间的递增顺序进行排序后的第i个目标截止数据对应的历史操作时间;
步骤S133、根据第i个目标截止数据对应的故障类型,确定第i个目标截止数据对应的视频分割时间hi;
第一操作视频为目标测试设备对应的测试环境进行测试的整体完整视频,在测试时,当预设测试插件监测到bug数据时,表示当前操作发生故障,则预设测试插件自动对该时间节点进行标记,若此时测试人员仍要继续测试,则预设测试插件会根据发生bug的目标操作数据的故障类型,确定视频分割时间,视频分割时间为目标操作视频的时间长度,即从当前时间往前截取视频分割时间的长度视频,将其确定为目标操作视频,若测试人员暂停或结束测试,则预设测试插件会根据视频分割时间对测试整体视频进行分割,截取到目标操作视频,便于复现时查看发生bug的原因,而无需将测试的整体视频传输至服务器,节省了复现的原因分析的时间,也节省了服务器的存储空间和数据传输效率。
进一步,步骤S133包括:
步骤S1331、若第i个目标截止数据对应的故障类型为预设故障类型,则设置hi为预设类型时间列表中与该预设故障类型对应的分割时间;否则,设置hi为预设分割时间;其中,预设类型时间列表中存储有每一预设故障类型对应的分割时间。
步骤S134、以ti-hi作为第i个目标截止数据的分割起始时间,以ti作为第i个目标截止数据的分割截止时间,对第一操作视频进行分割,得到第i个目标截止数据对应的操作视频,并将其确定为目标操作视频。
测试设备中存储有预设类型时间列表,预设类型时间列表中的分割时间通过对历史复现视频长度的统计得到,统计历史预设时间段内的所有不同类型在进行bug复现时所需的操作数量,再通过操作数量与操作时间的乘积确定对应的历史类型文件的复现时间长度,对得到的每个类型的所有复现时间长度进行均值处理,得到每个类型对应的复现时间长度,将其确定为对应的分割时间,当预设测试插件监测到bug时,先查看其类型是否存在于预设类型时间列表中,若存在,则直接在预设类型时间列表中找到对应的分割时间,若不存在,则以预设分割时间作为该目标操作数据的分割时间,通过对不同类型的目标操作数据进行不同的分割时间的确定,便于复现时查看对应的操作。
一种测试过程的复现装置100,如图4所示,包括:
文件接收模块110,用于接收目标测试设备进行代码数据测试得到的目标日志文件和目标操作视频并保存;目标日志文件中包括若干测试操作信息,每一测试操作信息对应有目标操作数据和与目标操作数据对应的历史操作时间;目标操作视频对应有若干历史操作时间;目标日志文件和目标操作视频均对应有目标测试设备标识;
数据获取模块120,用于根据目标测试设备标识,获取目标测试设备进行代码数据测试的测试环境数据;
环境配置模块130,用于根据测试环境数据,配置测试复现环境;测试复现环境中包括复现显示界面和复现操作界面;
操作复现模块140,用于识别目标操作视频中的测试操作,在测试复现环境中复现目标操作视频中的测试操作,以在复现显示界面上复现目标测试设备的测试过程;其中,在复现测试过程时,根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据。
本发明通过获取目标测试设备进行代码数据测试的测试环境数据,在服务器中配置测试复现环境,使测试复现环境与测试环境的配置相同,可以直接利用测试复现环境的虚拟环境进行调试,无需开发人员手动对测试复现环境的构建,由预设测试插件监测目标测试设备在进行代码数据测试得到的目标操作数据,当预设测试插件监测到bug数据时,目标测试设备将目标日志文件和目标操作视频传输至服务器中,并根据历史操作时间,获取目标日志文件对应的目标操作数据,将目标操作视频配置于测试复现环境中,以使复现显示界面复现目标测试设备的测试过程,并根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据,便于开发人员对bug的复现,与现有的复现方法相比,减轻了测试人员的bug录入的工作量。
本发明的实施例还提供一种计算机程序产品,其包括程序代码,当所述程序产品在电子设备上运行时,所述程序代码用于使该电子设备执行本说明书上述描述的根据本发明各种示例性实施方式的方法中的步骤。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
根据本发明的这种实施方式的电子设备。电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
电子设备以通用计算设备的形式表现。电子设备的组件可以包括但不限于:上述至少一个处理器、上述至少一个储存器、连接不同系统组件(包括储存器和处理器)的总线。
其中,所述储存器存储有程序代码,所述程序代码可以被所述处理器执行,使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
储存器可以包括易失性储存器形式的可读介质,例如随机存取储存器(RAM)和/或高速缓存储存器,还可以进一步包括只读储存器(ROM)。
储存器还可以包括具有一组(至少一个)程序模块的程序/实用工具,这样的程序模块包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线可以为表示几类总线结构中的一种或多种,包括储存器总线或者储存器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
电子设备也可以与一个或多个外部设备(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备交互的设备通信,和/或与使得该电子设备能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口进行。并且,电子设备还可以通过网络适配器与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器通过总线与电子设备的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种测试过程的复现方法,其特征在于,包括如下步骤:
接收目标测试设备进行代码数据测试得到的目标日志文件和目标操作视频并保存;所述目标日志文件中包括若干测试操作信息,每一所述测试操作信息对应有目标操作数据和与所述目标操作数据对应的历史操作时间;所述目标操作视频对应有若干历史操作时间;所述目标日志文件和所述目标操作视频均对应有目标测试设备标识;
根据所述目标测试设备标识,获取所述目标测试设备进行代码数据测试的测试环境数据;
根据所述测试环境数据,配置测试复现环境;所述测试复现环境中包括复现显示界面和复现操作界面;
识别所述目标操作视频中的测试操作,在所述测试复现环境中复现所述目标操作视频中的测试操作,以在所述复现显示界面上复现所述目标测试设备的测试过程;其中,在复现所述测试过程时,根据当前复现的操作对应的历史操作时间,在所述复现操作界面上展示所述历史操作时间对应的目标操作数据。
2.根据权利要求1所述的方法,其特征在于,所述目标测试设备中设置有预设测试插件;
所述目标操作视频为所述预设测试插件执行以下步骤得到的:
录制所述目标测试设备对应的测试环境在t01至t02间进行代码数据测试的操作视频,并将其确定为第一操作视频;其中,t01为所述目标测试设备对应的测试环境进行代码数据测试的起始时间;t02为所述目标测试设备对应的测试环境进行代码数据测试的结束时间;
遍历若干所述目标操作数据,若所述目标操作数据为bug数据,则将其确定为目标截止数据,得到n个目标截止数据;
获取每一所述目标截止数据对应的历史操作时间,并根据历史操作时间的递增顺序,对n个所述目标截止数据对应的历史操作时间进行排序,得到第一时间节点集T=(t1,t2,...,ti,...,tn);其中,i=1,2,...,n;t1≥t01;tn≤t02;ti为根据历史操作时间的递增顺序进行排序后的第i个所述目标截止数据对应的历史操作时间;
根据第i个所述目标截止数据对应的故障类型,确定第i个所述目标截止数据对应的视频分割时间hi;
以ti-hi作为第i个所述目标截止数据的分割起始时间,以ti作为第i个所述目标截止数据的分割截止时间,对所述第一操作视频进行分割,得到第i个所述目标截止数据对应的操作视频,并将其确定为目标操作视频。
3.根据权利要求2所述的方法,其特征在于,所述根据第i个所述目标截止数据对应的故障类型,确定第i个所述目标截止数据对应的视频分割时间hi,包括:
若第i个所述目标截止数据对应的故障类型为预设故障类型,则设置hi为预设类型时间列表中与该预设故障类型对应的分割时间;否则,设置hi为预设分割时间;其中,预设类型时间列表中存储有每一预设故障类型对应的分割时间。
4.根据权利要求3所述的方法,其特征在于,所述目标测试设备通过所述预设测试插件配置用于进行代码数据测试的测试环境;
所述预设测试插件用于执行以下步骤:
实时监测对应的测试环境进行代码数据测试生成的目标操作数据;
若所述目标操作数据为目标截止数据,则向所述目标测试设备发送上传请求;
若接收到所述目标测试设备发送的复现请求,则将所述目标截止数据对应的目标日志文件和目标操作视频传输至所述目标测试设备。
5.根据权利要求1所述的方法,其特征在于,所述在所述测试复现环境中复现所述目标操作视频中的测试操作,以在所述复现显示界面上复现所述目标测试设备的测试过程,还包括:
根据每一所述历史操作时间,在所述目标操作视频上确定对应的暂停时间节点;
在所述复现显示界面中配置与每一所述暂停时间节点对应的暂停按键;
在复现所述测试过程时,当任一所述暂停按键被执行点击操作时,所述复现显示界面和复现操作界面暂停该所述暂停时间节点对应的画面。
6.根据权利要求1所述的方法,其特征在于,所述根据当前复现的操作对应的历史操作时间,在所述复现操作界面上展示所述历史操作时间对应的目标操作数据,包括:
在复现所述测试过程时,获取当前复现的操作对应的目标操作时间;
根据每一所述目标操作数据对应的历史操作时间的递增顺序,对若干个所述目标操作数据进行排序,得到排序后目标操作数据列表Q1,Q2,...,Qm,...,Qj;其中,m=1,2,...,j;j为所述目标操作数据的数量;Qm为根据历史操作时间排序后的第m个所述目标操作数据;
将Q1,...,Qm确定为在所述复现操作界面上展示的与历史操作时间对应的目标操作数据,并在所述复现操作界面上展示;所述Qm对应的历史操作时间处于所述目标操作时间之后,且Qm-1对应的历史操作时间处于所述目标操作时间之前。
7.根据权利要求6所述的方法,其特征在于,所述在所述复现操作界面上展示所述历史操作时间对应的目标操作数据,还包括:
若在所述复现操作界面中已展示的Qm被执行点击操作,则将Q1,...,Qm对应的目标操作时间段的目标操作过程在所述复现显示界面中重新复现;其中,所述目标操作时间段为Q1对应的历史操作时间与Qm对应的历史操作时间之间的时间段。
8.一种测试过程的复现装置,其特征在于,包括:
文件接收模块,用于接收目标测试设备进行代码数据测试得到的目标日志文件和目标操作视频并保存;目标日志文件中包括若干测试操作信息,每一测试操作信息对应有目标操作数据和与目标操作数据对应的历史操作时间;目标操作视频对应有若干历史操作时间;目标日志文件和目标操作视频均对应有目标测试设备标识;
数据获取模块,用于根据目标测试设备标识,获取目标测试设备进行代码数据测试的测试环境数据;
环境配置模块,用于根据测试环境数据,配置测试复现环境;测试复现环境中包括复现显示界面和复现操作界面;
操作复现模块,用于识别目标操作视频中的测试操作,在测试复现环境中复现目标操作视频中的测试操作,以在复现显示界面上复现目标测试设备的测试过程;其中,在复现测试过程时,根据当前复现的操作对应的历史操作时间,在复现操作界面上展示历史操作时间对应的目标操作数据。
9.一种非瞬时性计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,其特征在于,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1-7中任意一项所述的方法。
10.一种电子设备,其特征在于,包括处理器和权利要求9中所述的非瞬时性计算机可读存储介质。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311079483.4A CN116795727B (zh) | 2023-08-25 | 2023-08-25 | 一种测试过程的复现方法及装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311079483.4A CN116795727B (zh) | 2023-08-25 | 2023-08-25 | 一种测试过程的复现方法及装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116795727A CN116795727A (zh) | 2023-09-22 |
CN116795727B true CN116795727B (zh) | 2023-10-27 |
Family
ID=88046829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311079483.4A Active CN116795727B (zh) | 2023-08-25 | 2023-08-25 | 一种测试过程的复现方法及装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116795727B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105005520A (zh) * | 2015-06-23 | 2015-10-28 | 上海卓易科技股份有限公司 | 一种移动终端的自动测试方法及其装置 |
CN107967214A (zh) * | 2017-08-15 | 2018-04-27 | 北京摩拜科技有限公司 | 应用程序的测试方法及测试设备 |
CN113961534A (zh) * | 2021-12-21 | 2022-01-21 | 荣耀终端有限公司 | 生成日志文件的方法和电子设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004030415A1 (de) * | 2004-06-24 | 2006-01-19 | Siemens Ag | Verfahren zur automatischen Ermittlung operativer Leistungsdaten von Lesesystemen |
US20100036676A1 (en) * | 2008-08-07 | 2010-02-11 | E-Merge Health Solutions, Ltd. | Computer implemented medical treatment management system |
US8782730B2 (en) * | 2010-12-09 | 2014-07-15 | At&T Intellectual Property I, L.P. | User assistance via customer premises equipment media files |
-
2023
- 2023-08-25 CN CN202311079483.4A patent/CN116795727B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105005520A (zh) * | 2015-06-23 | 2015-10-28 | 上海卓易科技股份有限公司 | 一种移动终端的自动测试方法及其装置 |
CN107967214A (zh) * | 2017-08-15 | 2018-04-27 | 北京摩拜科技有限公司 | 应用程序的测试方法及测试设备 |
CN113961534A (zh) * | 2021-12-21 | 2022-01-21 | 荣耀终端有限公司 | 生成日志文件的方法和电子设备 |
Non-Patent Citations (5)
Title |
---|
Inferring test models from user bug reports using multi-objective search;Giovani Guizzo etc.;Empir Softw Eng;第28卷(第04期);全文 * |
Reproducing performance bug reports in server applications:The researchers‘experiences;Xue Han etc.;Journal of Systems and Software;第156卷;全文 * |
基于SNMP的监控系统关键技术研究与开发;吴威等;无线互联科技(第06期);全文 * |
攻击者对安全体系的预测、绕过、干扰与安全防护应对;肖新光等;信息技术与网络安全;全文 * |
运载火箭组装与测试远程协同信息平台技术;张晨光等;宇航学报(第08期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116795727A (zh) | 2023-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109271325B (zh) | 应用的测试方法、系统、电子设备和存储介质 | |
KR101881804B1 (ko) | 게임 테스트 자동화 장치 및 방법 | |
CN109388556B (zh) | 一种测试过程的分析方法及装置 | |
CN110347085B (zh) | 自动化测试系统、方法、车辆以及计算机可读介质 | |
CN111949545A (zh) | 自动化测试方法、系统、服务器及存储介质 | |
WO2023065749A1 (zh) | 分布式数据库的内嵌方法、装置、设备及存储介质 | |
CN108647284B (zh) | 记录用户行为的方法及装置、介质和计算设备 | |
CN116795727B (zh) | 一种测试过程的复现方法及装置、电子设备及存储介质 | |
CN111522749B (zh) | 页面测试方法、装置、可读存储介质及电子设备 | |
CN111475423A (zh) | 数据录入方法、装置、电子设备及可读存储介质 | |
CN107342917B (zh) | 用于检测网络设备性能的方法和装置 | |
CN111326176A (zh) | 基于opus编码的rtp包的检测方法、装置及介质 | |
CN116016468A (zh) | 会话问题诊断方法、装置、介质和电子设备 | |
CN111382017A (zh) | 故障查询方法、装置,服务器及存储介质 | |
CN114443480A (zh) | 测试方法、系统、可读介质及电子设备 | |
CN109756393B (zh) | 信息处理方法、系统、介质和计算设备 | |
CN113656391A (zh) | 数据检测方法及装置、存储介质及电子设备 | |
CN109995607B (zh) | 流量开销的测试方法、终端、服务器和计算机存储介质 | |
CN108228829B (zh) | 用于生成信息的方法和装置 | |
RU2671999C1 (ru) | Способ и система для диагностики мобильных вычислительных устройств | |
CN110569182A (zh) | 一种崩溃率计算方法、装置、计算机设备及存储介质 | |
CN114690988B (zh) | 测试方法、装置和电子设备 | |
CN113824987B (zh) | 直播间首帧耗时的确定方法、介质、装置和计算设备 | |
CN117349052A (zh) | 服务异常问题定位方法、设备、存储介质及程序产品 | |
CN114116291B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |