一种应用程序控件的调试方法、调试装置及计算设备制造方法及图纸

技术编号:33064360 阅读:40 留言:0更新日期:2022-04-15 09:54
本发明专利技术公开了一种应用程序控件的调试方法、调试装置及计算设备,方法在计算设备中执行,包括步骤:获取预处理源代码文件,基于预处理源代码文件来构建应用程序,其中,预处理源代码文件中包括一个或多个控件对象以及每个控件对象对应的提示代码,应用程序的界面中包含与每个控件对象相对应的控件;对应用程序界面中的每个控件进行测试,以确定应用程序界面中的一个或多个异常控件;响应于在异常控件上的预定操作,执行与异常控件相对应的提示代码,以在异常控件的预定范围内显示相应的提示信息,以便基于提示信息在预处理源代码文件中定位到与异常控件相对应的控件对象。根据本发明专利技术的技术方案,可以快速定位到与异常控件相对应的控件对象。应的控件对象。应的控件对象。

【技术实现步骤摘要】
一种应用程序控件的调试方法、调试装置及计算设备


[0001]本专利技术涉及计算机及软件调试
,特别涉及一种应用程序控件的调试方法、调试装置及计算设备。

技术介绍

[0002]在现有的图形化操作系统中,开发人员经常需要在软件中集成大量的控件单元。然而在对软件进行测试时,开发人员只能根据界面的显示情况向开发人员提交BUG,而面对代码文件中的大量的控件单元对象,开发人员或后续的维护人员常常无法快速准确地定位到异常控件在代码文件中的控件对象,从而导致在该环节耗费大量时间。
[0003]现有技术中有一种软件调试工具,是通过捕获编译器在编译阶段预埋的调试信息,并自动修改可执行文件的机器码来生成控件对象的Tool Tip执行代码,进而在后续调试过程中显示标记的内容。但,采用这种技术方案,机器码和调试信息的生成依赖于当时的编译器版本和系统环境,当升级编译器或更换系统环境后,与之对应的软件调试工具也需要进行升级适配,导致每次编写的软件调试工具具有一定的局限性。
[0004]为此,需要一种应用程序控件的调试方法,以解决上述技术方案中存在的问题。

技术实现思路

[0005]为此,本专利技术提供一种应用程序控件的调试方法及调试装置,以力图解决或者至少缓解上面存在的问题。
[0006]根据本专利技术的一个方面,提供了一种应用程序控件的调试方法,在计算设备中执行,包括步骤:获取预处理源代码文件,基于预处理源代码文件来构建应用程序,其中,所述预处理源代码文件中包括一个或多个控件对象以及每个控件对象对应的提示代码,所述应用程序的界面中包含与每个控件对象相对应的控件;对应用程序界面中的每个控件进行测试,以确定所述应用程序界面中的一个或多个异常控件;以及响应于在异常控件上的预定操作,执行与所述异常控件相对应的提示代码,以在所述异常控件的预定范围内显示相应的提示信息,以便基于所述提示信息在所述预处理源代码文件中定位到与所述异常控件相对应的控件对象。
[0007]可选地,在根据本专利技术的应用程序控件的调试方法中,响应于在异常控件上的预定操作包括:响应于鼠标指针在异常控件上悬停预定时间的操作。
[0008]可选地,在根据本专利技术的应用程序控件的调试方法中,所述提示信息包括所述异常控件对应的对象标识符名称。
[0009]可选地,在根据本专利技术的应用程序控件的调试方法中,在获取预处理源代码文件之前,包括步骤:获取应用程序对应的一个或多个源代码文件;确定每个源代码文件中的所有控件对象;在源代码文件中插入与每个控件对象相对应的提示代码,得到预处理源代码文件。
[0010]可选地,在根据本专利技术的应用程序控件的调试方法中,在源代码文件中插入与每
个控件对象相对应的提示代码的步骤包括:获取每个控件对象第一次申请内存的代码位置;基于每个控件对象第一次申请内存的代码位置,在源代码文件中插入与所述控件对象相对应的提示代码,得到预处理源代码文件。
[0011]可选地,在根据本专利技术的应用程序控件的调试方法中,获取应用程序对应的一个或多个源代码文件的步骤包括:获取应用程序对应的一个或多个源代码文件路径;基于每个源代码文件路径获取对应的源代码文件。
[0012]可选地,在根据本专利技术的应用程序控件的调试方法中,确定每个源代码文件中的所有控件对象的步骤包括:遍历每个源代码文件,在源代码文件中定位到每个控件对象,并对每个控件对象进行标记。
[0013]可选地,在根据本专利技术的应用程序控件的调试方法中,所述提示代码为执行Tool Tip操作的代码。
[0014]根据本专利技术的一个方面,提供了一种调试装置,驻留在计算设备中,包括:构建模块,适于获取预处理源代码文件,基于预处理源代码文件来构建应用程序,其中,所述预处理源代码文件中包括一个或多个控件对象以及每个控件对象对应的提示代码,所述应用程序的界面中包含与每个控件对象相对应的控件;测试模块,适于对应用程序界面中的每个控件进行测试,以确定所述应用程序界面中的一个或多个异常控件;以及提示模块,适于响应于在异常控件上的预定操作,执行与所述异常控件相对应的提示代码,以在所述异常控件的预定范围内显示相应的提示信息,以便基于所述提示信息在所述预处理源代码文件中定位到与所述异常控件相对应的控件对象。
[0015]根据本专利技术的一个方面,提供了一种计算设备,包括:至少一个处理器;以及存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如上所述的应用程序控件的调试方法的指令。
[0016]根据本专利技术的一个方面,提供了一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如上所述方法。
[0017]根据本专利技术的技术方案,提供了一种应用程序控件的调试方法,基于在源代码文件中预埋每个控件对应的提示代码后得到的预处理源代码文件,来构建应用程序,并通过对应用程序界面中的各个控件进行测试后确定出每个异常控件,根据预处理源代码文件中预埋的各个控件对应的提示代码,开发人员可以在应用程序界面对异常控件进行预定操作而触发在界面上显示出与异常控件相关的提示信息,这样,开发人员可以根据异常控件对应的提示信息在预处理源代码文件中快速、准确地定位到与异常控件相对应的控件对象,以便于对异常控件对象进行排错处理,从而有利于提高对应用程序控件的调试效率。
[0018]上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。
附图说明
[0019]为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述
以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
[0020]图1示出了根据本专利技术一个实施例的计算设备100的示意框图;图2示出了根据本专利技术一个实施例的应用程序控件的调试方法200的流程图;图3示出了根据本专利技术一个实施例的对源代码文件进行预处理的流程图;以及图4示出了根据本专利技术一个实施例的调试装置400示意图。
具体实施方式
[0021]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0022]图1是示例计算设备100的示意框图。
[0023]如图1所示,在基本的配置102中,计算设备100典型地包括系统存储器106和一个或者多个处理器104。存储器总线108可以用于在处理器104和系统存储器106之间的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用程序控件的调试方法,在计算设备中执行,包括步骤:获取预处理源代码文件,基于预处理源代码文件来构建应用程序,其中,所述预处理源代码文件中包括一个或多个控件对象以及每个控件对象对应的提示代码,所述应用程序的界面中包含与每个控件对象相对应的控件;对应用程序界面中的每个控件进行测试,以确定所述应用程序界面中的一个或多个异常控件;以及响应于在异常控件上的预定操作,执行与所述异常控件相对应的提示代码,以在所述异常控件的预定范围内显示相应的提示信息,以便基于所述提示信息在所述预处理源代码文件中定位到与所述异常控件相对应的控件对象。2.如权利要求1所述的方法,其中,响应于在异常控件上的预定操作包括:响应于鼠标指针在异常控件上悬停预定时间的操作。3.如权利要求1所述的方法,其中,所述提示信息包括所述异常控件对应的对象标识符名称。4.如权利要求1

3中任一项所述的方法,其中,在获取预处理源代码文件之前,包括步骤:获取应用程序对应的一个或多个源代码文件;确定每个源代码文件中的所有控件对象;在源代码文件中插入与每个控件对象相对应的提示代码,得到预处理源代码文件。5.如权利要求4所述的方法,其中,在源代码文件中插入与每个控件对象相对应的提示代码的步骤包括:获取每个控件对象第一次申请内存的代码位置;基于每个控件对象第一次申请内存的代码位置,在源代码文件中插入与所述控件对象相对应的提示代码,得到预处理源代码文件。6.如权利要求4所述的方法,其中,获取应用程序对应的一个或多个源代码...

【专利技术属性】
技术研发人员:王正阳刘明航张勇
申请(专利权)人:统信软件技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1