一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

脚本生成及测试方法和电子设备、计算机存储介质与流程

2022-10-26 16:59:29 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,特别是涉及脚本生成及测试方法和电子设备、计算机存储介质。


背景技术:

2.selenium ide作为selenium套件的其中一部分,主要是承担录制用户在用户操作可界面上的操作行为并生成脚本的职责,可提供回放功能。但是,通常selenium ide在录制用户操作行为时无法由用户主动插入检查点指令,因此用户无法通过其回放时在检查点产生的的检查数据直观快速的对比更新前的可操作界面与更新后的可操作界面的差异。


技术实现要素:

3.本技术至少提供一种可应用于金融科技等相关领域的脚本生成及测试方法和电子设备、计算机存储介质,能够在录制时由用户主动插入检查点以在回放时在检查点处产生检查数据,从而使用户能够直观快速的对比得到更新前的可操作界面与更新后的可操作界面的差异。
4.本技术第一方面提供了一种脚本生成及测试方法,包括:响应于用户的录制指令,开始识别并记录用户操作;其中,所述识别并记录用户操作包括:响应于用户在某个操作节点处的插入检查点指令,在所述操作节点处插入检查点命令以在后续回放所述用户操作时,和/或,运行所述用户操作时在所述操作节点处插入检查点;响应于用户结束录制的指令,保存所述用户操作集合为脚本案例。
5.本技术第二方面提供了一种电子设备,包括相互耦接的存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现上述的脚本生成及测试方法。
6.本技术第三方面提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令被处理器执行时实现上述的脚本生成及测试方法。
7.上述方案,通过用户在录制脚本案例时,可以在两步用户操作之间主动插入检查点指令,使之后每次在回放脚本案例时都会在该两部用户操作之间执行该检查点指令对应的操作,同时生成相应的检查点数据,从而使用户能够通过该检查点数据直观地对比观察得到多次回放之间或者回放与录制时,不同版本之间的可操作页面的差异。本技术用于金融科技领域,可以加快金融软件页面的更新效率,提高竞争力。
8.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本技术。
附图说明
9.此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本技术的实施例,并与说明书一起用于说明本技术的技术方案。
10.图1是本技术脚本生成及测试方法一实施例的流程示意图;图2是本技术脚本生成及测试方法另一实施例的流程示意图;图3是本技术脚本生成及测试方法又一实施例的流程示意图;图4是本技术脚本生成及测试方法生成的回放报告的示意图;图5是本技术脚本生成及测试方法生成的操作界面及生成的操作日志示意图;图6是本技术电子设备一实施例的框架示意图;图7为本技术计算机可读存储介质70一实施例的框架示意图。
具体实施方式
11.下面结合说明书附图,对本技术实施例的方案进行详细说明。
12.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本技术。
13.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。
14.通常,对于用户可操作页面的开发往往会经历多个版本的测试后才会发布最终的可用版本,对于一些迭代快速的版本测试,现有的使用自动化工具生成的脚本无法在脚本录制时主动插入截图等设置检查点以在后续的回放和执行过程中在检查点处生成检查数据以便于开发者对比历代测试版本的差异,就会导致测试效率低下。本技术通过提升脚本测试的效率,加快了页面发布的进度,提高在金融科技领域的竞争能力。
15.请参阅图1,图1是本技术脚本生成及测试方法一实施例的流程示意图。具体而言,可以包括如下步骤:s1:响应于用户的录制指令,开始识别并记录用户操作;其中,识别并记录用户操作包括:s11:响应于用户的插入检查点指令,插入检查点;具体地,响应于用户在某个操作节点处的插入检查点指令,在操作节点处插入检查点命令以在后续回放用户操作时,和/或,运行用户操作时在操作节点处插入检查点;s3:响应于用户结束录制的指令,保存脚本案例;具体地,保存用户操作的集合为脚本案例。用户操作的集合即用户先后进行的各个操作的集合,具体地,以用户登录页面为例,用户先后点击输入账号、点击输入密码和点击登录,则用户操作的集合为:点击输入站好、点击输入密码、点击登录。
16.具体的,上述脚本生成和测试方法的执行主体可以是selenium ide,通过用户点击开始录制按钮下达录制指令,开始录制用户接下来的操作;在录制过程中,selenium ide在用户操作页面上创建插入检查点按钮,用户可以通过点击插入检查点按钮,在相应的操作节点处插入检查点,其中,每个操作节点中记录了用户的一步操作;即,进入一个操作节点后,将用户的操作记录下来,即进入下一个操作节点,识别到用户执行某操作后,即将该
操作记录下来保存到该操作节点上;用户插入检查点操作的执行过程具体可以如下:例如,在对用户登录界面进行测试时,用户可操作页面上设置有输入账号、输入密码、登录、注册等按钮,操作页面上同时还显示由selenium ide生成的插入检查点按钮,用户在录制时,第一步用户操作为:点击输入账号按钮,则第一个操作节点处执行的操作就是点击输入账号;识别并记录下用户在第一个操作节点处的操作后,接下来进入第二个操作节点,用户希望在输入账号后插入检查点,则点击插入检查点按钮,即可在第一个操作节点之后的第二个操作节点处插入检查点指令,以使脚本案例在回放和执行时均在第二操作节点处的检查点处产生检查数据。通过用户主动插入的检查点产生的检查数据可以方便测试时对比若干个版本的用户操作页面之间的差异,从而提高测试效率。
17.请参照图2,图2是本技术脚本测试及生成方法的另一实施例的流程示意图,在响应于用户结束录制的指令,保存用户操作集合为脚本案例之后,还包括:s4:响应于用户的回放指令,回放脚本案例;s5:响应于回放脚本案例的结束,生成回放报告;其中,回放报告中包括回放脚本案例时在相应操作节点处的检查点产生的数据。
18.由于在脚本录制时用户插入了检查点,因此在回放该脚本案例时,会自动执行检查点指令,并生成检查点数据,脚本案例回放结束后自动生成回放报告,且回放报告中附有检查点数据,用户可以查看回放报告并对照检查点数据,从而更加直观地观察到历代版本的差异以及回放失败的节点及失败原因。本技术的脚本录制、回放、保存以及报告生成等流程均由selenium ide来执行,提高了脚本的健壮性和可移植性,节省了人力和时间,进一步提高测试效率。
19.在一些可能的实施方式中,插入检查点指令包括插入截图指令,响应于用户在某个操作节点处的插入检查点指令,在操作节点处插入检查点命令以在后续回放用户操作时,和/或,运行用户操作时在操作节点处插入检查点包括:响应于用户在某个操作节点处的插入截图指令,在某个操作节点处插入点击事件,点击事件的目标命令的标签值为截图命令的标签值,调用截图命令进行截图,且在后续回放,和/或,运行脚本案例时在操作节点处调用截图命令进行截图;调用截图命令进行截图包括:调用外部应用程序编程接口,根据当前显示区域边缘到当前页面边缘的距离将当前显示区域移动至当前页面边缘,对当前页面进行滚动截图;其中,当前页面为执行截图命令的上一个操作节点后指向的页面,当前显示区域为当前页面在显示器上显示的区域。
20.具体来说,检查点指令可以是插入截图指令,还可以是其他便于用户查看执行过程的指令,例如录屏指令,录音指令等,在此不作限定;selenium ide在一个操作节点执行完毕后,如果用户此时插入截图指令,则会在下一个操作节点处产生一个点击事件,该点击事件的目标命令为截图命令,且该点击事件的目标命令的标签值为截图命令的标签值;其中,为了使该点击事件能够成功触发截图命令,需要先建立截图命令与其标签值的映射,这样,在回放时监听到点击事件目标命令的标签值与截图命令的标签值相同后,可以根据该标签值调出与该标签值对应的截图程序,从而执行该截图程序。例如,截图命令的标签值为screenshotdiv,且建立了该标签值与某个具有截图功能的外部应用程序编程接口的映射,以用户登录界面为例,在录制时,用户点击输入密码按钮后,点击了插入截图按钮,则产生
的点击事件的目标命令的标签值即screenshotdiv;在后续的回放脚本案例时,执行到这一操作节点时,识别到点击事件的目标指令的标签值为screenshotdiv,而该标签值指向的程序为该外部应用程序编程接口,因此调用该程序进行截图,执行完毕后继续执行下一操作节点的指令。
21.例如,仍以用户登录界面的测试为例,开始录制后,用户先后进行如下操作:点击输入账号、点击输入密码、点击插入截图、点击登录,则生成的脚本案例记录下的各个操作节点的用户操作为:点击输入账号、点击输入密码、点击插入截图、点击登录,即可在回放该脚本案例时,在模拟用户点击用户登录页面上的输入密码按钮后调用截图程序对当前页面进行截图。
22.为了防止由于显示屏幕大小与页面大小不匹配导致的截图不全,需要对当前页面进行全截图:例如,当前页面为8*8的方形页面,而当前显示区域为4*6的矩形,则当前显示区域仅是当前页面的一部分,为了对当前页面进行全面截图,需要对当前显示区域进行调整。以用户登录界面为例,用户输入账号和密码并点击登录按钮后,指向了一个新的页面,则这个新的页面就是当前页面,假设新的页面显示的内容包括“密码错误,请重新输入”,而这部分内容显示在页面的顶部区域,但是当前显示区域即当前页面在显示器上显示的区域为当前页面的底部区域,则当前显示区域中无法将“密码错误,请重新输入”这部分内容显示出来,因此不能直接进行截图。为了对当前页面进行全面截图,可以计算当前显示区域的边缘到当前页面边缘的距离,比如,当前显示区域为矩形,当前页面为方形,分别计算该矩形的左边到方形的左边的距离,记为第一距离;以及矩形的上边到方形的上边的距离,记为第二距离;并将当前显示区域向左移动第一距离并向上移动第二距离,则此时将当前显示区域调整到了当前页面的左上角。还可以将当前显示区域移动至当前页面的其他方位,不作限定;将当前显示区域调整到边缘后,即可开始滚动截图,直到滚动截图覆盖当前页面的全部内容;滚动截图可以是每次滚动与当前显示区域与滚动方向平行的边长度相同的距离,例如横向滚动,则每次滚动的距离与当前显示区域的上边长度相同;还可以自定义每次滚动的距离;将当前显示区域移动到当前页面的边缘后对当前页面进行滚动截图,可以提高截图效率,减少截图的重复区域并保留当前页面的全部内容。
23.请参照图3,图3是本技术脚本生成及测试方法又一实施例的流程示意图,在一些可能的实施方式中,识别并记录用户操作还包括:s12:响应于用户的插入等待时间指令,插入等待时间;具体地,响应于用户在某个操作节点处的插入等待时间指令,在脚本案例中的某个操作节点处插入点击事件,该点击事件的目标命令的标签值为等待命令的标签值,以使在后续回放,和/或,运行脚本案例时在操作节点处调用等待命令,延迟等待时间后执行下一操作。
24.以用户登录界面为例,在录制时,selenium ide会在用户登录界面上创建插入等待时间按钮,响应于用户点击登录按钮后点击插入等待时间按钮,插入一条点击事件,该点击事件的目标命令的标签值与等待命令的标签值相同,例如,等待命令的标签值为vandawaitediv,且建立了该标签值与等待命令的映射,则该点击事件的目标命令的标签值也为vandawaitediv,回放脚本案例时,监听到点击事件目标命令的标签值为vandawaitediv,则根据映射调用等待命令,等待命令可以是倒计时命令或者计时命令,在时间到达预设值后,结束等待并执行下一操作节点的用户操作。等待命令的默认等待时间
为3000毫秒,等待命令的等待时间可以根据实际更改。
25.在一些可能的实施方式中,响应于用户的回放指令,回放脚本案例包括:响应于用户选定一个或若干个脚本案例以及用户的回放指令,将一个或若干个脚本案例添加至回放序列,依次回放脚本案例。
26.当需要回放多个脚本案例时,可以响应于用户选中若干个脚本案例以及用户的回放指令,将用户选中的若干个脚本案例加入到回放序列中,在前一个脚本案例回放结束时自动进行下一个脚本案例的回放;其中,回放序列可以是数组,将若干个需要回放的脚本案例的数据添加至数组中,将数组中的第一个脚本案例的数据赋值给当前播放案例,即可回放第一个脚本案例;第一个脚本案例回放结束后,可以将数组中的第二个脚本案例的数据赋值给当前播放案例,即可回放第二个脚本案例,第二个脚本案例回放结束后继续按照上述方法回放第三个脚本案例,直到遍历数组;在第一个脚本案例回放结束后,也可以删除数组中的第一个脚本案例的数据,同时判断数组长度是否大于0,若数组长度大于0,则将此时数组中的第一个脚本案例的数据赋值给当前播放案例,直到数组长度为0。通过多选脚本案例自动回放,可以减少用户的劳动量。
27.在一些可能的实施方式中,还包括:响应于用户的创建案例集指令,将案例集存储至存储单元,存储单元具有与其他案例集的存储单元不同的地址,存储单元用于存储案例集中的脚本案例;响应于用户结束录制脚本案例的指令,保存脚本案例包括:将一个或若干个脚本案例保存到用户指定的案例集对应的存储单元的地址上;响应于用户的回放指令,回放脚本案例包括:响应于用户选定一个或若干个案例集以及用户的回放指令,将一个或若干个案例集添加至回放序列,依次回放案例集中的脚本案例。
28.响应于用户的创建案例集指令创建案例集,相当于创建一个文件夹用于存储脚本案例,可以将测试相同功能模块的脚本案例存储在同一个案例集中,回放脚本案例时,选定一个或者若干个案例集,即可回放被选中的案例集中的所有脚本案例,回放若干个脚本案例的方法与上述实施例相同,不再赘述。
29.在一些可能的实施方式中,在回放脚本案例时,生成每个操作节点的操作日志,操作日志包括脚本案例当前已回放的用户操作及已回放用户操作的操作对象;响应于回放脚本案例的结束,生成回放报告;其中,回放报告中包括回放脚本案例时在相应操作节点处的检查点产生的数据包括:响应于一个或若干个脚本案例中最后一个脚本案例的回放结束,根据操作日志生成回放报告;其中,回放报告中包括回放脚本案例时在相应操作节点处的截图。
30.请参照图4和图5,图4是本技术脚本生成及测试方法生成的回放报告的示意图,图5是本技术脚本生成及测试方法生成的操作界面及生成的操作日志示意图,具体的,以用户登录界面为例,点击输入密码按钮,则会生成执行该操作的操作日志,操作日志包括:执行操作为点击操作,且该点击操作的目标为输入密码按钮;在回放一个脚本案例时,会在回放时生成操作日志;回放结束后,会生成回放报告,回放报告中包括每个操作节点处执行的操作以及操作的目标,该操作是否通过回放、等待时间长度等内容,若在回放时执行过截图指令,且截图指令的截图数据会被保存在存储器中,回放报告中可以插入截图数据在存储器中的地址,响应于点击地址的指令会调出存储器中的截图数据。具体的,回放报告中可以显示“查看截图”按钮,用户点击查看截图按钮即可从存储器的相应地址中提取出对应的截
图。此外,当回放若干个脚本案例时,会在若干个脚本案例中的最后一个脚本案例回放结束后将上述所有的脚本案例的操作日志按照回放顺序合并,加入是否通过回放以及等待时间长度等内容后渲染到html文件中以html格式导出,形成一份回放报告。通过多个脚本案例回放时将多个脚本案例的回放报告合并成一份,可以更加整体地展现多个脚本案例的功能。
31.在一些可能的实施方式中,响应于用户选定一个或若干个脚本案例以及用户的删除指令,在回放序列中删除被选定的一个或若干个脚本案例;和/或,响应于用户选定一个或若干个脚本案例以及用户的添加指令,添加被选定的一个或若干个脚本案例到回放序列中。即,用户在删除和添加脚本案例时,会实时更新回放序列中的数据。
32.请参阅图6,图6是本技术电子设备60一实施例的框架示意图。电子设备60包括相互耦接的存储器61和处理器62,处理器62用于执行存储器61中存储的程序指令,以实现上述脚本生成及测试方法实施例中的步骤。在一个具体的实施场景中,电子设备60可以包括但不限于:微型计算机、服务器,此外,电子设备60还可以包括笔记本电脑、平板电脑等移动设备,在此不做限定。
33.具体而言,处理器62用于控制其自身以及存储器61以实现上述脚本生成及测试方法实施例中的步骤。处理器62还可以称为cpu(central processing unit,中央处理单元)。处理器62可能是一种集成电路芯片,具有信号的处理能力。处理器62还可以是通用处理器、数字信号处理器(digital signal processor, dsp)、专用集成电路(application specific integrated circuit, asic)、现场可编程门阵列(field-programmable gate array, fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器62可以由集成电路芯片共同实现。
34.请参阅图7,图7为本技术计算机可读存储介质70一实施例的框架示意图。计算机可读存储介质70存储有能够被处理器运行的程序指令701,程序指令701用于实现上述任一图像检测模型的训练方法实施例的步骤,或实现上述脚本生成及测试方法实施例中的步骤。
35.在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
36.上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
37.在本技术所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
38.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单
元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
39.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
40.若本技术技术方案涉及个人信息,应用本技术技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本技术技术方案涉及敏感个人信息,应用本技术技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献