CN116737572A - 一种基于互联网的应用软件测试方法、系统及存储介质 - Google Patents

一种基于互联网的应用软件测试方法、系统及存储介质 Download PDF

Info

Publication number
CN116737572A
CN116737572A CN202310720888.5A CN202310720888A CN116737572A CN 116737572 A CN116737572 A CN 116737572A CN 202310720888 A CN202310720888 A CN 202310720888A CN 116737572 A CN116737572 A CN 116737572A
Authority
CN
China
Prior art keywords
test
branch
information
terminal
application software
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
Application number
CN202310720888.5A
Other languages
English (en)
Inventor
张欣铃
李甲鹏
姚俊楠
马文磊
丁冉
谢郑国
陈祥龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Henan Electronic Planning Institute Co ltd
Original Assignee
Henan Electronic Planning Institute Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Henan Electronic Planning Institute Co ltd filed Critical Henan Electronic Planning Institute Co ltd
Priority to CN202310720888.5A priority Critical patent/CN116737572A/zh
Publication of CN116737572A publication Critical patent/CN116737572A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test 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

本发明属于软件测试技术领域,公开了一种基于互联网的应用软件测试方法、系统及存储介质:第i个第一终端选择要进行的第j个测试支路,将待测试应用软件信息和第j个测试支路的标识信息发送给服务器;服务器基于待测试应用软件信息获取第二终端列表,并获取空闲第二终端的终端信息;服务器根据第j个测试支路的标识信息获取第j个测试支路的测试信息,基于测试信息和终端信息生成测试指令,并将测试指令发送给空闲第二终端;空闲第二终端根据测试指令对待测试应用软件进行测试,测试完成后生成并发送测试结果;第i个第一终端获取测试结果,并对测试结果进行分析。本发明解决了对应用软件进行测试时测试时间长、测试效率低的问题。

Description

一种基于互联网的应用软件测试方法、系统及存储介质
技术领域
本发明属于软件测试技术领域,具体涉及一种基于互联网的应用软件测试方法、系统及存储介质。
背景技术
随着全球制造业的全面升级,工业应用软件作为现在工业的灵魂,它的普及与应用将加速企业对于产品高质量高效益升级的落实,也是实现数字化制造的前提条件。为了提高开发效率和应用软件使用好评度,在应用软件的开发工作中,应用软件在开发完成、上线应用后,通常都会对应用软件进行检测。由此,可以第一时间发现应用软件的异常,进而快速的解决应用软件的问题,避免客户进行投诉,为客户提供良好的应用环境。
现有技术中,比如中国专利CN115934554A,公开了一种工业应用软件的自动化测试方法、装置、设备及存储介质,在进行测试时,确定当前测试阶段并向客户端下发与当前测试阶段对应的测试脚本,以便客户端基于测试脚本进行相应的测试操作;检测当前的测试操作是否已测试通过并记录相应的测试结果,若是则跳转至获取客户端的当前运行状态并向客户端下发与当前运行状态对应的测试脚本的步骤,直至客户端执行完全部的测试操作。该方法在对应用软件进行测试时,一个客户端测试完成后,才进行下一个客户端的测试,需要的测试时间长,且测试效率低。再比如中国专利CN115705288A,公开了一种应用软件的测试方法及装置、存储介质及电子设备,在预设的定时测试任务被触发的情况下,获取与定时测试任务所对应的应用软件的各个测试脚本;对于每个测试脚本,执行测试脚本,以获取应用软件中与测试脚本对应的业务的业务测试数据;对于每个业务测试数据,调用该业务测试数据对应的业务的标准数据,并对业务测试数据和标准数据进行处理,得到业务的测试结果。该方法在对应用软件进行测试时,在一个终端上测试多个测试脚本,需要的测试时间长,且测试效率低。
因此,提供一种基于互联网的应用软件测试方法、系统及存储介质,以减少测试时间,并提高测试效率,是亟待解决的问题。
发明内容
针对上述提出的技术问题,本发明提供一种基于互联网的应用软件测试方法、系统及存储介质。
第一方面,本发明提供了一种基于互联网的应用软件测试方法,该方法包括如下步骤:
步骤1、第i个第一终端选择要进行的第j个测试支路,并将待测试应用软件信息和第j个测试支路的标识信息发送给服务器,其中,第一终端是待测试应用软件的测试请求端,i为1~N1的正整数,j为1~N2的正整数,N1为第一终端的总数,N2为第i个第一终端上存储的测试支路的总数;
步骤2、服务器基于待测试应用软件信息获取第二终端列表,并获取空闲第二终端的终端信息,其中,第二终端是安装待测试应用软件并对待测试应用软件进行测试的终端,终端信息包括操作系统信息、序列号和测试状态,测试状态包括空闲、占用和离线;
步骤3、服务器根据第j个测试支路的标识信息获取第j个测试支路的测试信息,基于测试信息和终端信息生成测试指令,并将测试指令发送给空闲第二终端;
步骤4、空闲第二终端根据测试指令对待测试应用软件进行测试,测试完成后生成并发送测试结果;
步骤5、第i个第一终端获取测试结果,并对测试结果进行分析。
具体地,步骤1之前包括:
步骤111、获取待测试应用软件的所有交互界面,将所有交互界面分为初始交互界面、中转交互界面和终点交互界面,所有交互界面之间通过点击交互界面中的图标进行跳转,其中,初始交互界面为测试起点界面,终点交互界面为测试终点界面,中转交互界面为从初始交互界面跳转到终点交互界面时经过的界面;
步骤112、获取第h个终点交互界面,遍历初始交互界面和中转交互界面,获取从初始交互界面到达第h个终点交互界面的所有主动测试支路的第一支路集合,其中,主动测试支路上的节点依次为从初始交互界面到第h个终点交互界面顺序点击的各个图标的标识,h为1~H的正整数,H为终点交互界面的个数;
步骤113、遍历第一支路集合,删除第一支路集合中的冗余支路获取第二支路集合;
步骤114、获取第二支路集合中的第g1个主动测试支路,基于第g1个主动测试支路中每个图标所在交互界面的源程序代码,获取每个图标的标签信息,将每个图标的标签信息输入第一学习模型,获取第g1个主动测试支路的作用,将第g1个主动测试支路的标识、第g1个主动测试支路的作用和第g1个主动测试支路的图标序列相对应地存储在第一存储模块,其中,g1为1~G1的正整数,G1为第二支路集合中主动测试支路的总数;
步骤115、若h<H,h=h+1,则返回步骤112,直到h=H。
具体地,步骤113包括:
步骤1131、分别计算第一支路集合中每个图标被主动测试支路经过的次数,当任一图标被主动测试支路经过的次数为1次时,将任一图标所在的主动测试支路存入第二支路集合,获取从第一支路集合中删除任一图标所在的主动测试支路后的第三支路集合;
步骤1132、分别计算第三支路集合中每个主动测试支路经过的图标的个数,从第三支路集合中获取经过图标个数最少的最短主动测试支路,将最短主动测试支路存入第二支路集合,并将最短主动测试支路从第三支路集合中删除,得到第四支路集合,其中,最短主动测试支路的个数为大于等于1的正整数;
步骤1133、获取第四支路集合中未被第二支路集合中的主动测试支路经过的图标的标识信息,定义该图标为未测试图标,基于任一未测试图标的标识信息,从第四支路集合中获取经过任一未测试图标的最短主动测试支路,将任一未测试图标对应的最短主动测试支路存入第二支路集合;重复步骤1133,直到第四支路集合中的所有图标都被第二支路集合中的主动测试支路经过。
具体地,步骤1之前还包括:
步骤121、获取M个测试人员使用待测试应用软件的G2个操作信息,其中,操作信息为从测试开始交互界面到测试结束交互界面的操作步骤,M和G2为正整数;
步骤122、基于G2个操作信息分别生成G2个操作测试支路,其中,第g2个操作测试支路上的节点依次为第g2个操作信息中从测试开始交互界面到测试结束交互界面各个操作步骤的标识,g2为1~G2的正整数;
步骤123、遍历G2个操作测试支路,删除G2个操作测试支路中的重复支路,并获取剩余的G3个操作测试支路,其中,G3为正整数;
步骤124、获取G3个操作测试支路中第g3个操作测试支路,当第一存储模块中存在与第g3个操作测试支路一样的主动测试支路和/或第g3个操作测试支路是第一存储模块中任一操作测试支路的一部分时,删除第g3个操作测试支路,其中,g3为1~G3的正整数;
步骤125、当第一存储模块中不存在与第g3个操作测试支路一样的主动测试支路,且第g3个操作测试支路不是第一存储模块中任一操作测试支路的一部分时,基于第g3个操作测试支路中每个操作步骤所在交互界面的源程序代码,获取每个操作步骤的标签信息,将每个操作步骤的标签信息输入第一学习模型,获取第g3个操作测试支路的作用,将第g3个操作测试支路的标识、第g3个操作测试支路的作用和第g3个操作测试支路的操作步骤的标识序列相对应地存储在第一存储模块。
具体地,获取第一存储模块中的所有测试支路,基于所有测试支路中每条测试支路的作用信息,将所有测试支路分为N1类,将第i个分类对应的测试支路信息发送到第i个第一终端上。
具体地,步骤3包括:
当空闲第二终端的操作系统信息与第i个第一终端的操作系统信息一致时,基于将第j个测试支路的测试信息生成测试指令;
当空闲第二终端的操作系统信息与第i个第一终端的操作系统信息不一致时,将第j个测试支路的测试信息转换为空闲第二终端能够识别的指令信息,基于指令信息生成测试指令。
具体地,在第i个第一终端上选择第j个测试支路后,从第j个测试支路中选取一部分作为待测试支路,将待测试支路信息和第j个测试支路的标识信息发送给服务器;
服务器基于第j个测试支路的标识信息获取第j个测试支路的测试信息,并根据待测试支路信息从测试信息中获取待测试信息,随后基于待测试信息和终端信息生成测试指令,并将测试指令发送给空闲第二终端。
具体地,测试结果包括测试结束时的屏幕截图信息、测试过程的音视频信息或待测试应用软件的运行日志。
第二方面,本发明还提供了一种基于互联网的应用软件测试系统,该系统包括:测试端、服务器和待测试端;
测试端包括N1个第一终端,所述待测试端包括N3个第二终端;
第i个第一终端,用于选择要进行的第j个测试支路,并将待测试应用软件信息和第j个测试支路的标识信息发送给服务器,其中,第一终端是待测试应用软件的测试请求端,i为1~N1的正整数,j为1~N2的正整数,N2为第i个第一终端上存储的测试支路的总数;
服务器,用于根据待测试应用软件信息获取第二终端列表,并获取空闲第二终端的终端信息,其中,第二终端是安装待测试应用软件并对待测试应用软件进行测试的终端,终端信息包括操作系统信息、序列号和测试状态,测试状态包括空闲、占用和离线;根据第j个测试支路的标识信息获取第j个测试支路的测试信息,基于测试信息和终端信息生成测试指令,并将测试指令发送给空闲第二终端;
空闲第二终端,用于根据测试指令对待测试应用软件进行测试,测试完成后生成并发送测试结果;
第i个第一终端,还用于获取测试结果,并对测试结果进行分析。
第三方面,本发明提供了一种计算机存储介质,计算机存储介质存储有程序指令,其中,在程序指令运行时控制计算机存储介质所在设备执行上述任意一项的基于互联网的应用软件测试方法。
本发明公开的一种基于互联网的应用软件测试方法、系统及存储介质,在不同的第一终端上保存不同的测试信息,需要测试时,第i个第一终端选择要进行的第j个测试支路,并将待测试应用软件信息和第j个测试支路的标识信息发送给服务器,服务器基于待测试应用软件信息获取第二终端列表,并获取空闲第二终端的终端信息,在选择第二终端时,选择空闲的第二终端,也就是说,在一个第二终端上只进行一个测试,服务器根据第j个测试支路的标识信息获取第j个测试支路的测试信息,基于测试信息和终端信息生成测试指令,并将测试指令发送给空闲第二终端,空闲第二终端根据测试指令对待测试应用软件进行测试,测试完成后生成并发送测试结果,第i个第一终端获取测试结果,并对测试结果进行分析。本发明的技术方案中,不同的第一终端控制进行不同的测试,并对相应的测试结果进行分析,同时,在不同的第二终端上进行不同的测试,即可以节省测试时间,又可以提高测试效率,各个测试支路之间相互独立,互不影响,测试准确性高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明的一种基于互联网的应用软件测试方法的流程图;
图2为本发明的一种基于互联网的应用软件测试系统的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明经行进一步的详细说明。显然,此处所描述的具体实施例仅仅用于解释本发明,是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术普通人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,若本发明实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
图1所示是本发明提供的一种基于互联网的应用软件测试方法的一个实施例的流程图,该流程图具体包括:
步骤1、第i个第一终端选择要进行的第j个测试支路,并将待测试应用软件信息和第j个测试支路的标识信息发送给服务器,其中,第一终端是待测试应用软件的测试请求端,i为1~N1的正整数,j为1~N2的正整数,N1为第一终端的总数,N2为第i个第一终端上存储的测试支路的总数。
第一终端的总数N1,可以根据本领域技术人员的经验或可以根据实际应用场景进行设置,本申请实施例对此并不限定。
第一终端是发起对应用软件的测试请求的终端,第二终端是另外设置的、用于基于第一终端的请求对应用软件进行测试的终端。例如第一终端是移动终端A,第二终端是移动终端B;每个第一终端上存储有相同的应用软件,且每个第一终端上存储有若干个测试支路的信息,当需要对第一终端内的应用软件进行测试时,第一终端发起与该第一终端上保存的测试支路相对应的测试,且在发起测试时,可以从上述若干个测试支路中任选一个测试支路进行测试,测试完成后,每个测试支路的测试结果返回至对应的第一终端内进行分析,通过设置多个第一终端同时发起对不同支路的测试和分析,从而可以提升软件的测试效率。
优选地,在第i个第一终端要对应用软件A进行第j个支路的测试时,第i个第一终端向服务器发起测试请求,在其收到服务器的响应信息后,第i个第一终端将待测试应用软件信息,也即应用软件A的信息和第j个测试支路的标识信息发送给服务器。
优选地,在第i个第一终端要进行第j个支路的测试时,第i个第一终端向服务器发起测试请求,在其收到服务器的响应信息后,第i个第一终端将待测试应用软件信息和第j个测试支路的标识信息发送给服务器。
作为本发明的一个优选技术方案,步骤1之前包括:
步骤111、获取待测试应用软件的所有交互界面,将所有交互界面分为初始交互界面、中转交互界面和终点交互界面,所有交互界面之间通过点击交互界面中的图标进行跳转,其中,初始交互界面为测试起点界面,终点交互界面为测试终点界面,中转交互界面为从初始交互界面跳转到终点交互界面时经过的界面。
示例性地,初始交互界面为打开所述应用软件后的第一个交互界面;终点交互界面为实现某一功能后的交互界面。
交互界面间通过点击交互界面上的图标进行跳转。示例性地,打开待测试应用软件后,要打开文件时,在待测试应用的初始交互界面点击“打开”文件按钮,跳转到文件选择交互界面(即中转交互界面),在文件选择交互界面进行文件选择,选定文件后,点击文件选择交互界面的“打开”按钮,跳转到文件打开后的交互界面(即终点交互界面)。
点击任一图标后,也可能会在同一交互界面进行跳转。示例性地,在登录界面,要登录应用软件时,点击“用户账号”图标后,跳转到上述登录界面的“输入密码”或“输入验证码”图标,点击“输入密码”或“输入验证码”图标后,跳转到“登录”图标,点击“登录”后,登录成功,跳转到登录成功后的交互界面。
步骤112、获取第h个终点交互界面,遍历初始交互界面和中转交互界面,获取从初始交互界面到达第h个终点交互界面的所有主动测试支路的第一支路集合,其中,主动测试支路上的节点依次为从初始交互界面到第h个终点交互界面顺序点击的各个图标的标识,h为1~H的正整数,H为终点交互界面的个数。
示例性地,要登录应用软件时,可以通过密码进行验证,可以通过验证码进行验证,还可以通过扫描二维码进行验证,也就是说,要成功跳转到待测试应用软件的登录成功后的交互界面,可以有多种方式,即可以生成多个测试支路。
步骤113、遍历第一支路集合,删除第一支路集合中的冗余支路获取第二支路集合。
步骤114、获取第二支路集合中的第g1个主动测试支路,基于第g1个主动测试支路中每个图标所在交互界面的源程序代码,获取每个图标的标签信息,将每个图标的标签信息输入第一学习模型,获取第g1个主动测试支路的作用,将第g1个主动测试支路的标识、第g1个主动测试支路的作用和第g1个主动测试支路的图标序列相对应地存储在第一存储模块,其中,g1为1~G1的正整数,G1为第二支路集合中主动测试支路的总数。
步骤115、若h<H,h=h+1,则返回步骤112,直到h=H。
第一学习模型为预先训练的机器模型,将各个图标的标签输入到所述第一学习模型,可以输出上述各个图标组合起来的意图,即主动测试支路的作用。
示例性地,在登录界面,要登录应用软件时,点击“用户账号”图标后,跳转到上述登录界面的“输入密码”或“输入验证码”图标,点击“输入密码”或“输入验证码”图标后,跳转到“登录”图标,点击“登录”后,登录成功,跳转到登录成功后的交互界面。在进行登录测试时,点击的图标依次为“用户账号”、“输入密码”和“登录”,从“用户账号”所在的交互界面的源程序代码中获取“用户账号”图标对应的标签为“user account”,从“输入密码”所在的交互界面的源程序代码中获取“输入密码”图标对应的标签为“password”,从“登录”所在的交互界面的源程序代码中获取“登录”图标对应的标签为“register”、“empower”。将“useraccount”、“password”、“register”和“empower”输入到第一学习模型可以得到该主动测试支路的作用为“登录认证”。
作为本发明的一个优选技术方案,步骤113包括:
步骤1131、分别计算第一支路集合中每个图标被主动测试支路经过的次数,当任一图标被主动测试支路经过的次数为1次时,将任一图标所在的主动测试支路存入第二支路集合,获取从第一支路集合中删除任一图标所在的主动测试支路后的第三支路集合;
步骤1132、分别计算第三支路集合中每个主动测试支路经过的图标的个数,从第三支路集合中获取经过图标个数最少的最短主动测试支路,将最短主动测试支路存入第二支路集合,并将最短主动测试支路从第三支路集合中删除,得到第四支路集合,其中,最短主动测试支路的个数为大于等于1的正整数;
步骤1133、获取第四支路集合中未被第二支路集合中的主动测试支路经过的图标的标识信息,定义该图标为未测试图标,基于任一未测试图标的标识信息,从第四支路集合中获取经过任一未测试图标的最短主动测试支路,将任一未测试图标对应的最短主动测试支路存入第二支路集合;重复步骤1133,直到第四支路集合中的所有图标都被第二支路集合中的主动测试支路经过。
示例性地,从初始交互界面到第h个终点交互界面的共有5条主动测试支路,将上述5条主动测试支路经过的图标标注为1~16的16个数字标识,其中,第一条主动测试支路的图标序列为(1、2、3、4、8、12、16),第二条主动测试支路的图标序列为(1、5、6、7、16),第三条主动测试支路的图标序列为(1、5、6、2、3、7、4、8、12、16),第四条主动测试支路的图标序列为(1、5、9、13、14、10、11、15、16),第五条主动测试支路的图标序列为(1、5、9、13、14、10、6、7、8、12、16),其中,图标11和图标15被主动测试支路经过的次数为1,则将第四条主动测试支路存入第二支路集合;第二条主动测试支路经过的图标的个数最少,则将第二条主动测试支路存入第二支路集合;在划分至第二支路集合中的主动测试支路中,存在图标2、3、4、8和12未被主动测试支路经过,也即划分至第二支路集合中的支路未对图标2、3、4、8、12进行测试,那么就基于图标2的标识信息从剩余的3条主动测试支路中选择经过图标2的最短主动测试支路,即第一条主动测试支路,则将第一条主动测试支路存入第二支路集合,此时,5条主动测试支路经过的图标均被第二支路集合中的主动测试支路经过;另外,若在第二支路集合中,仍然存在图标未被主动测试支路经过,则继续从第四支路集合中抽取主动测试支路。
作为本发明的一个优选技术方案,步骤1之前还包括:
步骤121、获取M个测试人员使用待测试应用软件的G2个操作信息,其中,操作信息为从测试开始交互界面到测试结束交互界面的操作步骤,M和G2为正整数。
测试人员的数量M和操作信息的个数G2,可以根据本领域技术人员的经验或可以根据实际应用场景进行设置,本申请实施例对此并不限定。
步骤122、基于G2个操作信息分别生成G2个操作测试支路,其中,第g2个操作测试支路上的节点依次为第g2个操作信息中从测试开始交互界面到测试结束交互界面各个操作步骤的标识,g2为1~G2的正整数。
步骤123、遍历G2个操作测试支路,删除G2个操作测试支路中的重复支路,并获取剩余的G3个操作测试支路,其中,G3为正整数。
步骤124、获取G3个操作测试支路中第g3个操作测试支路,当第一存储模块中存在与第g3个操作测试支路一样的主动测试支路和/或第g3个操作测试支路是第一存储模块中任一操作测试支路的一部分时,删除第g3个操作测试支路,其中,g3为1~G3的正整数。
示例性地,第g3个操作测试支路的操作序列为1→2→3,第一存储模块中任一操作测试支路的图标序列为1→2→3→4,则第g3个操作测试支路是第一存储模块中上述任一操作测试支路的一部分,因此将其进行删除以减少操作测试支路的数量。。
步骤125、当第一存储模块中不存在与第g3个操作测试支路一样的主动测试支路,且第g3个操作测试支路不是第一存储模块中任一操作测试支路的一部分时,基于第g3个操作测试支路中每个操作步骤所在交互界面的源程序代码,获取每个操作步骤的标签信息,将每个操作步骤的标签信息输入第一学习模型,获取第g3个操作测试支路的作用,将第g3个操作测试支路的标识、第g3个操作测试支路的作用和第g3个操作测试支路的操作步骤的标识序列相对应地存储在第一存储模块。
在应用软件上线之前,需要测试人员手动操作该应用软件进行操作,并发现使用过程中的问题。测试人员手动操作应用软件,操作过程更加灵活、全面,因此,在生成测试支路时,收集测试人员的操作信息,基于该操作信息生成操作测试支路,以对主动测试支路进行补充,使对待测试软件进行测试的测试支路更加全面,覆盖面更广。
优选地,操作步骤的标识序列为测试人员进行操作时点击的图标的序列,即第g3个操作测试支路的操作步骤的标识序列为第g个操作测试支路的图标序列。
优选地,操作信息包括对文本的输入,通过在输入框文本,再点击相应的图标,实现交互界面的跳转。
具体地,获取第一存储模块中的所有测试支路,基于所有测试支路中每条测试支路的作用信息,将所有测试支路分为N1类,将第i个分类对应的测试支路信息发送到第i个第一终端上。
示例性地,将所有测试支路分为:登录、安装、选择文件等,将“登录”对应的测试支路信息发送到第1个第一终端,将“安装”对应的测试支路信息发送到第2个第一终端,将“选择文件”对应的测试支路发送到第3个第一终端。
步骤2、服务器基于待测试应用软件信息获取第二终端列表,并获取空闲第二终端的终端信息,其中,第二终端是安装待测试应用软件并对待测试应用软件进行测试的终端,终端信息包括操作系统信息、序列号和测试状态,测试状态包括空闲、占用和离线。
当第二终端正在被测试时,测试状态未占用;当第二终端没有联网时,测试状态未离线。
优选地,服务器从第二终端列表中选择A1个测试状态为空闲的第二终端作为要进行测试的空闲第二终端。A1可以根据本领域技术人员的经验或可以根据实际应用场景进行设置,本申请实施例对此并不限定。服务器选择要进行测试的空闲第二终端后,更新上述第二终端列表中所述空闲第二终端对应的测试状态。
对待测试应用软件进行测试时,只选择空闲的第二终端进行测试,可以确保在某一时刻,每个第二终端只进行一种测试。需要进行多个测试支路的测试时,分别通过多个第一终端在不同的第二终端上进行测试,各个终端进行的测试之间相互独立,互不影响,在保证测试效率的同时,提高了测试的准确性。
步骤3、服务器根据第j个测试支路的标识信息获取第j个测试支路的测试信息,基于测试信息和终端信息生成测试指令,并将测试指令发送给空闲第二终端。
服务器根据第j个测试支路的标识信息从测试信息存储模块获取第j个测试支路的测试信息,测试信息为第j个测试支路对应的图标序列。
作为本发明的一个优选技术方案,步骤3包括:
当空闲第二终端的操作系统信息与第i个第一终端的操作系统信息一致时,基于将第j个测试支路的测试信息生成测试指令;
当空闲第二终端的操作系统信息与第i个第一终端的操作系统信息不一致时,将第j个测试支路的测试信息转换为空闲第二终端能够识别的指令信息,基于上述指令信息生成测试指令。
步骤4、空闲第二终端根据测试指令对待测试应用软件进行测试,测试完成后生成并发送测试结果。
作为本发明的一个优选技术方案,测试结果包括测试结束时的屏幕截图信息、测试过程的音视频信息或待测试应用软件的运行日志。
步骤5、第i个第一终端获取测试结果,并对测试结果进行分析。
分别在不同的第二终端上同时对多种测试支路进行测试,并获取各自对应的测试结果,不同的第一终端分别对该第一终端上保存的测试支路的测试结果进行分析。
每个第一终端上执行一种类型的测试支路的测试,第一终端上要进行测试的测试支路之间相互独立,可以更加精准地发现应用软件中存在的异常。
空闲第二终端生成测试结果后,将上述测试结果发送给服务器,服务器将上述测试结果转发给第i个第一终端。
作为本发明的一个优选技术方案,在第i个第一终端上选择第j个测试支路后,从第j个测试支路中选取一部分作为待测试支路,将待测试支路信息和第j个测试支路的标识信息发送给服务器;
服务器基于第j个测试支路的标识信息获取第j个测试支路的测试信息,并根据待测试支路信息从测试信息中获取待测试信息,随后基于待测试信息和终端信息生成测试指令,并将测试指令发送给空闲第二终端。
在选择第j个测试支路时,可以选择所述第j个测试支路的一部分进行测试。示例性地,在第一终端的显示器上显示所述第j个测试支路的图标序列,从所述第j个测试支路的图标序列中选择要测试的一段图标序列作为待测试支路的待测试支路信息。
图2所示是本发明提供的一种基于互联网的应用软件测试系统的一个实施例的结构示意图。如图2所示,该系统包括:测试端10、服务器20和待测试端30。
测试端10包括N1个第一终端,待测试端30包括N3个第二终端。
第i个第一终端,用于选择要进行的第j个测试支路,并将待测试应用软件信息和第j个测试支路的标识信息发送给服务器20,其中,第一终端是待测试应用软件的测试请求端,i为1~N1的正整数,j为1~N2的正整数,N2为第i个第一终端上存储的测试支路的总数。
服务器20,用于根据待测试应用软件信息获取第二终端列表,并获取空闲第二终端的终端信息,其中,第二终端是安装待测试应用软件并对待测试应用软件进行测试的终端,终端信息包括操作系统信息、序列号和测试状态,测试状态包括空闲、占用和离线;根据第j个测试支路的标识信息获取第j个测试支路的测试信息,基于测试信息和终端信息生成测试指令,并将测试指令发送给空闲第二终端。
空闲第二终端,用于根据测试指令对待测试应用软件进行测试,测试完成后生成并发送测试结果。
第i个第一终端,还用于获取测试结果,并对测试结果进行分析。
测试端是测试发起端的多个独立的第一终端的总称,待测试端是测试执行端的多个独立的第二终端的总称。
第一终端的总数N1和第二终端的总数N3,可以根据本领域技术人员的经验或可以根据实际应用场景进行设置,本申请实施例对此并不限定。
根据本发明实施例的另一个方面,提供了一种计算机存储介质,计算机存储介质存储有程序指令,其中,在程序指令运行时控制计算机存储介质所在设备执行上述任意一项的基于互联网的应用软件测试方法。
以上上述的实施例仅表达了本发明的实施优选方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种基于互联网的应用软件测试方法,其特征在于,包括如下步骤:
步骤1、第i个第一终端选择要进行的第j个测试支路,并将待测试应用软件信息和所述第j个测试支路的标识信息发送给服务器,其中,第一终端是待测试应用软件的测试请求端,i为1~N1的正整数,j为1~N2的正整数,N1为第一终端的总数,N2为所述第i个第一终端上存储的测试支路的总数;
步骤2、所述服务器基于所述待测试应用软件信息获取第二终端列表,并获取空闲第二终端的终端信息,其中,第二终端是安装所述待测试应用软件并对所述待测试应用软件进行测试的终端,所述终端信息包括操作系统信息、序列号和测试状态,所述测试状态包括空闲、占用和离线;
步骤3、所述服务器根据所述第j个测试支路的标识信息获取所述第j个测试支路的测试信息,基于所述测试信息和所述终端信息生成测试指令,并将所述测试指令发送给所述空闲第二终端;
步骤4、所述空闲第二终端根据所述测试指令对所述待测试应用软件进行测试,测试完成后生成并发送测试结果;
步骤5、所述第i个第一终端获取所述测试结果,并对所述测试结果进行分析。
2.根据权利要求1所述的一种基于互联网的应用软件测试方法,其特征在于,所述步骤1之前包括:
步骤111、获取所述待测试应用软件的所有交互界面,将所述所有交互界面分为初始交互界面、中转交互界面和终点交互界面,所述所有交互界面之间通过点击交互界面中的图标进行跳转,其中,所述初始交互界面为测试起点界面,所述终点交互界面为测试终点界面,所述中转交互界面为从所述初始交互界面跳转到所述终点交互界面时经过的界面;
步骤112、获取第h个终点交互界面,遍历所述初始交互界面和所述中转交互界面,获取从所述初始交互界面到达所述第h个终点交互界面的所有主动测试支路的第一支路集合,其中,主动测试支路上的节点依次为从所述初始交互界面到所述第h个终点交互界面顺序点击的各个图标的标识,h为1~H的正整数,H为所述终点交互界面的个数;
步骤113、遍历所述第一支路集合,删除所述第一支路集合中的冗余支路获取第二支路集合;
步骤114、获取所述第二支路集合中的第g1个主动测试支路,基于所述第g1个主动测试支路中每个图标所在交互界面的源程序代码,获取所述每个图标的标签信息,将所述每个图标的标签信息输入第一学习模型,获取所述第g1个主动测试支路的作用,将所述第g1个主动测试支路的标识、所述第g1个主动测试支路的作用和所述第g1个主动测试支路的图标序列相对应地存储在第一存储模块,其中,g1为1~G1的正整数,G1为所述第二支路集合中主动测试支路的总数;
步骤115、若h<H,h=h+1,则返回所述步骤112,直到h=H。
3.根据权利要求2所述的一种基于互联网的应用软件测试方法,其特征在于,所述步骤113包括:
步骤1131、分别计算所述第一支路集合中每个图标被所述主动测试支路经过的次数,当任一图标被所述主动测试支路经过的次数为1次时,将所述任一图标所在的主动测试支路存入所述第二支路集合,获取从所述第一支路集合中删除所述任一图标所在的主动测试支路后的第三支路集合;
步骤1132、分别计算所述第三支路集合中每个主动测试支路经过的图标的个数,从所述第三支路集合中获取经过图标个数最少的最短主动测试支路,将所述最短主动测试支路存入所述第二支路集合,并将所述最短主动测试支路从所述第三支路集合中删除,得到第四支路集合,其中,所述最短主动测试支路的个数为大于等于1的正整数;
步骤1133、获取所述第四支路集合中未被所述第二支路集合中的主动测试支路经过的图标的标识信息,定义该图标为未测试图标,基于任一未测试图标的标识信息,从所述第四支路集合中获取经过所述任一未测试图标的最短主动测试支路,将所述任一未测试图标对应的最短主动测试支路存入所述第二支路集合;重复所述步骤1133,直到所述第四支路集合中的所有图标都被所述第二支路集合中的主动测试支路经过。
4.根据权利要求2所述的一种基于互联网的应用软件测试方法,其特征在于,所述步骤1之前还包括:
步骤121、获取M个测试人员使用所述待测试应用软件的G2个操作信息,其中,操作信息为从测试开始交互界面到测试结束交互界面的操作步骤,M和G2为正整数;
步骤122、基于所述G2个操作信息分别生成G2个操作测试支路,其中,第g2个操作测试支路上的节点依次为所述第g2个操作信息中从所述测试开始交互界面到所述测试结束交互界面各个操作步骤的标识,g2为1~G2的正整数;
步骤123、遍历所述G2个操作测试支路,删除所述G2个操作测试支路中的重复支路,并获取剩余的G3个操作测试支路,其中,G3为正整数;
步骤124、获取所述G3个操作测试支路中第g3个操作测试支路,当所述第一存储模块中存在与所述第g3个操作测试支路一样的主动测试支路和/或所述第g3个操作测试支路是所述第一存储模块中任一操作测试支路的一部分时,删除所述第g3个操作测试支路,其中,g3为1~G3的正整数;
步骤125、当所述第一存储模块中不存在与所述第g3个操作测试支路一样的主动测试支路,且所述第g3个操作测试支路不是所述第一存储模块中任一操作测试支路的一部分时,基于所述第g3个操作测试支路中每个操作步骤所在交互界面的源程序代码,获取所述每个操作步骤的标签信息,将所述每个操作步骤的标签信息输入所述第一学习模型,获取所述第g3个操作测试支路的作用,将所述第g3个操作测试支路的标识、所述第g3个操作测试支路的作用和所述第g3个操作测试支路的操作步骤的标识序列相对应地存储在所述第一存储模块。
5.根据权利要求4所述的一种基于互联网的应用软件测试方法,其特征在于,获取所述第一存储模块中的所有测试支路,基于所述所有测试支路中每条测试支路的作用信息,将所述所有测试支路分为N1类,将第i个分类对应的测试支路信息发送到所述第i个第一终端上。
6.根据权利要求1所述的一种基于互联网的应用软件测试方法,其特征在于,所述步骤3包括:
当所述空闲第二终端的操作系统信息与所述第i个第一终端的操作系统信息一致时,基于将所述第j个测试支路的测试信息生成所述测试指令;
当所述空闲第二终端的操作系统信息与所述第i个第一终端的操作系统信息不一致时,将所述第j个测试支路的测试信息转换为所述空闲第二终端能够识别的指令信息,基于所述指令信息生成所述测试指令。
7.根据权利要求1所述的一种基于互联网的应用软件测试方法,其特征在于,在所述第i个第一终端上选择所述第j个测试支路后,从所述第j个测试支路中选取一部分作为待测试支路,将待测试支路信息和所述第j个测试支路的标识信息发送给所述服务器;
所述服务器基于所述第j个测试支路的标识信息获取所述第j个测试支路的测试信息,并根据所述待测试支路信息从所述测试信息中获取待测试信息,随后基于所述待测试信息和所述终端信息生成测试指令,并将所述测试指令发送给所述空闲第二终端。
8.根据权利要求1所述的一种基于互联网的应用软件测试方法,其特征在于,所述测试结果包括测试结束时的屏幕截图信息、测试过程的音视频信息或所述待测试应用软件的运行日志。
9.一种基于互联网的应用软件测试系统,用于实现如权利要求1至8任一项所述的基于互联网的应用软件测试方法,其特征在于,包括:测试端、服务器和待测试端;
所述测试端包括N1个第一终端,所述待测试端包括N3个第二终端;
第i个第一终端,用于选择要进行的第j个测试支路,并将待测试应用软件信息和所述第j个测试支路的标识信息发送给所述服务器,其中,第一终端是待测试应用软件的测试请求端,i为1~N1的正整数,j为1~N2的正整数,N2为所述第i个第一终端上存储的测试支路的总数;
所述服务器,用于根据所述待测试应用软件信息获取第二终端列表,并获取空闲第二终端的终端信息,其中,所述第二终端是安装所述待测试应用软件并对所述待测试应用软件进行测试的终端,所述终端信息包括操作系统信息、序列号和测试状态,所述测试状态包括空闲、占用和离线;根据所述第j个测试支路的标识信息获取所述第j个测试支路的测试信息,基于所述测试信息和所述终端信息生成测试指令,并将所述测试指令发送给所述空闲第二终端;
所述空闲第二终端,用于根据所述测试指令对所述待测试应用软件进行测试,测试完成后生成并发送测试结果;
所述第i个第一终端,还用于获取所述测试结果,并对所述测试结果进行分析。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有程序指令,其中,在所述程序指令运行时控制所述计算机存储介质所在设备执行权利要求1至8中任意一项所述的基于互联网的应用软件测试方法。
CN202310720888.5A 2023-06-16 2023-06-16 一种基于互联网的应用软件测试方法、系统及存储介质 Pending CN116737572A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310720888.5A CN116737572A (zh) 2023-06-16 2023-06-16 一种基于互联网的应用软件测试方法、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310720888.5A CN116737572A (zh) 2023-06-16 2023-06-16 一种基于互联网的应用软件测试方法、系统及存储介质

Publications (1)

Publication Number Publication Date
CN116737572A true CN116737572A (zh) 2023-09-12

Family

ID=87909390

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310720888.5A Pending CN116737572A (zh) 2023-06-16 2023-06-16 一种基于互联网的应用软件测试方法、系统及存储介质

Country Status (1)

Country Link
CN (1) CN116737572A (zh)

Similar Documents

Publication Publication Date Title
CN107908541B (zh) 接口测试方法、装置、计算机设备及存储介质
US10853232B2 (en) Adaptive system for mobile device testing
US8381184B2 (en) Dynamic test coverage
KR101881804B1 (ko) 게임 테스트 자동화 장치 및 방법
CN111045944A (zh) 回归测试方法、装置、系统及计算机可读存储介质
CN111124919A (zh) 一种用户界面的测试方法、装置、设备及存储介质
CN111026645A (zh) 用户界面自动化测试方法、装置、存储介质及电子设备
CN109977012B (zh) 系统的联调测试方法、装置、设备及计算机可读存储介质
CN111190827A (zh) 接口自动化测试方法、装置、存储介质及电子设备
CN117421217B (zh) 一种软件功能自动测试方法、系统、终端及介质
CN112069068A (zh) 自动化测试数据处理方法、装置、设备及可读存储介质
CN111522749B (zh) 页面测试方法、装置、可读存储介质及电子设备
CN110543429B (zh) 测试用例调试方法、装置及存储介质
US20050203717A1 (en) Automated testing system, method and program product using testing map
CN116431522A (zh) 一种低代码对象存储网关自动化测试方法及系统
CN116737572A (zh) 一种基于互联网的应用软件测试方法、系统及存储介质
CN112765041B (zh) 游戏自动化测试方法、装置及电子设备
CN112015645A (zh) web系统的功能测试方法、装置和电子设备
US20010024489A1 (en) Testing of telecommunication facilities
CN113225717B (zh) 蓝牙设备的控制方法、装置及计算机可读存储介质
CN111752823A (zh) 一种车载电源应用软件的测试方法、装置及设备
CN116932413B (zh) 测试任务的缺陷处理方法、缺陷处理装置及存储介质
CN106405430A (zh) 锂离子电池在线检测转换控制设备、系统及方法
CN114721954A (zh) 应答引擎的运行管理方法、装置、电子设备及可读介质
CN112199286A (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