一种软件测试方法、服务器、可读存储介质及芯片系统与流程

文档序号:35530549发布日期:2023-09-21 09:27阅读:35来源:国知局
一种软件测试方法、服务器、可读存储介质及芯片系统与流程

本技术涉及计算机,并且具体地,涉及一种软件测试方法、服务器、可读存储介质及芯片系统。


背景技术:

1、在终端设备的计算机程序发生运行异常(例如,计算机程序中的读写操作过于频繁)时,可能会导致终端设备发生宕机(即终端设备无法恢复运行)。此时,终端设备可以生成一个dump文件,来保存计算机程序运行异常时的内存信息、寄存器的信息和调用栈信息等。通过对dump文件进行测试分析,能够及时发现计算机程序的缺陷,提高计算机程序的稳定性。

2、目前,通常采用软件测试系统对dump文件进行测试分析。软件测试系统在对dump文件进行测试分析之前,需要研发人员手动选择dump文件及elf文件,并且手动填充寄存器的值,从而使得软件测试系统能够正确加载出运行异常的计算机程序,并对运行异常的计算机程序进行测试分析。

3、然而,上述测试方案中,研发人员手动选择dump文件以及手动填充寄存器的值所耗费的时间较长,导致对运行异常的计算机程序的测试分析效率较低。


技术实现思路

1、本技术提供了一种软件测试方法、服务器、可读存储介质及芯片系统,能够提高对待测试程序的测试分析效率。

2、第一方面,本技术提供了一种软件测试方法,该方法包括:

3、生成脚本文件,脚本文件包括第一文件的信息、第二文件的信息和至少一个寄存器的信息,第一文件是存储待测试程序的执行状态的文件,第二文件是存储与待测试程序对应的编译数据的文件,至少一个寄存器用于存储当前运行的待测试程序的指令和/或数据;

4、利用脚本文件加载待测试程序;

5、对待测试程序进行测试分析。

6、本技术通过生成脚本文件,能够得到包含第一文件的信息、第二文件的信息和至少一个寄存器的信息的脚本文件。继而可利用脚本文件自动加载待测试程序,无需人工介入,能够快速加载出待测试程序。基于此,可自动对加载出的待测试程序进行测试分析,得到待测试程序的测试分析结果,使得用户可根据测试分析结果,对待测试程序进行调整优化。从而可节省人力成本,提高对异常程序的分析效率。

7、在一些可能的实现方式中,在生成脚本文件之前,该方法还包括:

8、根据第一文件和第三文件,确定至少一个寄存器的信息,第三文件用于存储多个全局变量的信息。

9、上述实现方式中,根据第一文件和第三文件,能够自动确定至少一个寄存器的信息,无需用户手动输入寄存器的信息,从而为准确加载待测试程序做准备,一定程度上提高了加载待测试程序的效率。

10、在一些可能的实现方式中,根据第一文件和第三文件,确定至少一个寄存器的信息,包括:

11、基于第三文件,确定第一全局变量在第一内存空间中对应的第一存储空间的信息,第一全局变量为多个全局变量中的任意一个全局变量,第一内存空间用于存储第一文件,第一存储空间的信息包括以下中的一项或多项:第一起始地址、第一结束地址和第一地址长度;

12、在第一文件分段保存的情况下,基于多个内存段和第一存储空间的信息,确定第一内存段,第一内存段为多个内存段中第一全局变量所在的内存段,第一文件分段保存是指将第一内存空间划分为多个内存段以保存第一文件;

13、基于第一存储空间的信息,从第一内存段获取第一全局变量的值;

14、根据第一全局变量的值和第一偏移量,确定至少一个寄存器的信息,第一偏移量用于表示至少一个寄存器的信息在第一存储空间中对应的存储位置。

15、上述实现方式中,能够准确确定至少一个寄存器的信息,从而能够基于至少一个寄存器的信息,准确加载待测试程序。

16、在一些可能的实现方式中,在第一文件分段保存的情况下,基于多个内存段和第一存储空间的信息,确定第一内存段,包括:

17、获取多个内存段中的每个内存段的信息,每个内存段的信息包括以下中的一项或多项:第二起始地址、第二结束地址、第二偏移量和第二地址长度;

18、基于第一存储空间的信息和每个内存段的信息,从多个内存段中确定第一内存段。

19、上述实现方式中,通过基于第一存储空间的信息,遍历多个内存段的信息,能够准确确定多个内存段中的第一内存段,从而为准确确定至少一个寄存器的信息做准备。

20、在一些可能的实现方式中,在根据第一全局变量的值和第一偏移量,确定至少一个寄存器的信息之前,该方法还包括:

21、在第一文件未分段保存的情况下,基于第一存储空间的信息,从第一内存空间获取第一全局变量的值。

22、在一些可能的实现方式中,脚本文件还包括多个内存段的信息。从而能够基于多个内存段的信息,准确加载出待测试程序。

23、在一些可能的实现方式中,第一文件的信息包括第一路径,第一路径用于表示第一文件的存储位置;和/或,第二文件的信息包括第二路径,第二路径用于表示第二文件的存储位置。

24、上述实现方式中,通过访问第一路径,能够较快获得第一文件,通过访问第二路径,能够较快获得第二文件,无需用户手动选择路径,节省了人力成本,进一步提高了加载待测试程序的效率。

25、在一些可能的实现方式中,利用脚本文件加载待测试程序,还包括:

26、将脚本文件从第三路径拷贝到第四路径,第三路径为脚本文件的生成路径,第四路径为脚本文件的运行路径;

27、在运行脚本文件的过程中,利用脚本文件加载待测试程序。从而能够正确加载出待测试程序。

28、在一些可能的实现方式中,待测试程序为操作系统发生异常时的程序,至少一个寄存器用于存储操作系统发生异常时当前运行的待测试程序的指令和/或数据。从而能够使得用户根据待测试程序的测试分析结果,及时处理待测试程序中的异常,提高待测试程序的稳定性。

29、在一些可能的实现方式中,利用脚本文件加载待测试程序,包括:

30、响应于用户的第一操作,利用脚本文件加载待测试程序,第一操作用于触发启动对待测试程序的测试。

31、第二方面,本技术提供一种服务器,包括处理器和存储器;处理器和存储器耦合,存储器用于存储计算机程序,处理器调用指令,使得服务器执行第一方面及第一方面任一种可能的软件测试方法。

32、第三方面,本技术提供一种芯片系统,该芯片系统应用于包括存储器、显示屏和传感器的电子设备;芯片系统包括:一个或多个接口电路和一个或者多个处理器;接口电路和处理器通过线路互联;接口电路用于从存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机代码或指令;处理器调用指令,使得服务器执行第一方面及第一方面任一种可能的软件测试方法。

33、其中,芯片系统中可以包括一个芯片,也可以包括多个芯片;在芯片系统中包括多个芯片时,本技术对芯片的类型和数量等参数不做限定。

34、第四方面,本技术提供一种可读存储介质,该可读存储介质中存储有代码或指令,处理器调指令,使得服务器执行第一方面及第一方面任一种可能的软件测试方法。

35、第五方面,本技术提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行第一方面及第一方面任一种可能的软件测试方法。

36、可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1