一种程序段检测的方法及装置制造方法及图纸

技术编号:15541594 阅读:266 留言:0更新日期:2017-06-05 10:55
本发明专利技术公开了一种程序段检测的方法及装置,用以实现准确地检测某段代码是否执行成功的目的。所述方法包括:运行打印函数;通过所述打印函数调用宏;通过运行所述宏,获取当前位置信息;通过打印函数输出所述位置信息。

Method and device for detecting program segment

The invention discloses a method and a device for detecting a program segment, so as to realize the purpose of accurately detecting whether a certain code is executed successfully. The method comprises the following steps: running a printing function; calling the macro through the printing function; obtaining the current position information by running the macro; outputting the position information through a printing function.

【技术实现步骤摘要】
一种程序段检测的方法及装置
本专利技术涉及计算机
,特别涉及一种程序段检测的方法及装置。
技术介绍
在应用程序开发过程中检测某段代码是否执行成功,会在代码中写一条打印函数,打印函数的参数值是编程人员写的一段文字。如果代码执行成功,则会执行打印函数,输出写好的文字。对于一个应用程序(app)来说,需要测试的点特别多,则打印函数会被执行多次。如果打印函数的参数值,即编程人员写的文字区别不大,很难确定输出文字是针对哪个功能测试的,一旦出现问题,也很难根据输出文字确定出错代码的位置。因此,亟待解决这一问题。
技术实现思路
本专利技术提供一种程序段检测的方法及装置,用以实现准确地检测某段代码是否执行成功的目的。本专利技术提供一种程序段检测的方法,包括:运行打印函数;通过所述打印函数调用宏;通过运行所述宏,获取当前位置信息;通过打印函数输出所述位置信息。在本专利技术一实施例中,所述位置信息至少包括下列之一:文件名、类名、函数名和代码行号。在本专利技术一实施例中,所述通过运行所述宏,获取当前位置信息,包括:通过运行所述宏,获取编译系统的系统信息;从系统信息中获取当前位置信息。在本专利技术一实施例中,所述通过打印函数输出所述位置信息,包括:通过打印函数输出位置信息的字段名称和对应的所述位置信息。本专利技术还提供一种程序段检测的装置,包括:运行模块,用于运行打印函数;调用模块,用于通过所述打印函数调用宏;获取模块,用于通过运行所述宏,获取当前位置信息;输出模块,用于通过打印函数输出所述位置信息。在本专利技术一实施例中,所述位置信息至少包括下列之一:文件名、类名、函数名和代码行号。在本专利技术一实施例中,所述获取模块还用于:通过运行所述宏,获取编译系统的系统信息;在本专利技术一实施例中,所述输出模块还用于:通过打印函数输出位置信息的字段名称和对应的所述位置信息。在本专利技术实施例中,运行打印函数;通过所述打印函数调用宏;通过运行所述宏,获取当前位置信息;通过打印函数输出所述位置信息。由此可见,本专利技术实施例能够实现准确地检测某段代码是否执行成功的目的。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。附图说明附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。在附图中:图1所示为本专利技术一实施例中程序段检测的方法的流程图;图2所示为本专利技术另一实施例中程序段检测的方法的流程图;以及图3所示为本专利技术一实施例中程序段检测的装置的结构示意图。具体实施方式以下结合附图对本专利技术的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本专利技术,并不用于限定本专利技术。如图1所示为本专利技术一实施例中程序段检测的方法的流程图,该方法可以包括以下步骤S11-S14。步骤S11,运行打印函数。步骤S12,通过所述打印函数调用宏。步骤S13,通过运行所述宏,获取当前位置信息。在该步骤中,获取的位置信息至少可以包括下列之一:文件名、类名、函数名和代码行号。步骤S14,通过打印函数输出所述位置信息。在该步骤中,所述通过打印函数输出所述位置信息可以是通过打印函数输出位置信息的字段名称和对应的所述位置信息。在本专利技术实施例中,运行打印函数;通过所述打印函数调用宏;通过运行所述宏,获取当前位置信息;通过打印函数输出所述位置信息。由此可见,本专利技术实施例修改打印函数,使打印函数读取到代码行号、类名等信息,并且执行打印函数时,除了输出文字以外,还输出代码行号和类名等,这样方便确定测试成功的模块或出错的模块,由此本专利技术实施例能够实现准确地检测某段代码是否执行成功的目的。在一个可选的实施例中,步骤S13中通过运行所述宏获取当前位置信息,可以是通过运行所述宏,获取编译系统的系统信息。下面通过一具体实施例来详细介绍本专利技术的程序段检测的方法实现过程。如图2所示为本专利技术另一实施例中程序段检测的方法的流程图,该方法可以包括以下步骤S21-S24。步骤S21,运行打印函数。步骤S22,通过所述打印函数调用宏。步骤S23,通过运行所述宏,获取编译系统的系统信息。步骤S24,通过打印函数输出位置信息的字段名称和对应的所述位置信息。在该步骤中,所述位置信息至少包括下列之一:文件名、类名、函数名和代码行号。在具体的代码中,需要测试打印的地方添加此输出信息,内容信息可以自己定义,比如输出当前是在哪一个viewcontroller里面,在这个viewcontroller的哪个方法里面,在整个文件的哪一行,都可以自己定义:#definelog(fmt…)NSlog((@“[文件名:%s]\n”“[函数名:%s]\n”“行号:%d”\nfmt),_file_,_function_,_line_)#definelog(…)本专利技术实施例修改打印函数,使打印函数读取到代码行号、类名等信息,并且执行打印函数时,除了输出文字以外,还输出代码行号和类名等,这样方便确定测试成功的模块或出错的模块,由此本专利技术实施例能够实现准确地检测某段代码是否执行成功的目的。需要说明的是,在实际应用中,上述所有可选实施方式可以采用结合的方式任意组合,形成本专利技术的可选实施例,在此不再一一赘述。对应于上述实施例中的程序段检测的方法,本专利技术还提供一种程序段检测的装置。如图3所示为本专利技术一实施例中程序段检测的装置的结构示意图,包括:运行模块31,用于运行打印函数;调用模块32,用于通过所述打印函数调用宏;获取模块33,用于通过运行所述宏,获取当前位置信息;输出模块34,用于通过打印函数输出所述位置信息。在本专利技术一实施例中,所述位置信息至少包括下列之一:文件名、类名、函数名和代码行号。在本专利技术一实施例中,所述获取模块33,还用于通过运行所述宏,获取编译系统的系统信息。在本专利技术一实施例中,所述输出模块34,还用于通过打印函数输出位置信息的字段名称和对应的所述位置信息。本专利技术实施例的上述装置:运行打印函数;通过所述打印函数调用宏;通过运行所述宏,获取当前位置信息;通过打印函数输出所述位置信息。由此可见,本专利技术实施例能够实现准确地检测某段代码是否执行成功的目的。本领域内的技术人员应明白,本专利技术的实施例可提供为方法、系统、或计算机程序产品。因此,本专利技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本专利技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。本专利技术是参照根据本专利技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一本文档来自技高网...
一种程序段检测的方法及装置

【技术保护点】
一种程序段检测的方法,其特征在于,包括:运行打印函数;通过所述打印函数调用宏;通过运行所述宏,获取当前位置信息;通过打印函数输出所述位置信息。

【技术特征摘要】
1.一种程序段检测的方法,其特征在于,包括:运行打印函数;通过所述打印函数调用宏;通过运行所述宏,获取当前位置信息;通过打印函数输出所述位置信息。2.根据权利要求1所述的程序段检测方法,其特征在于,所述位置信息至少包括下列之一:文件名、类名、函数名和代码行号。3.根据权利要求1所述的程序段检测方法,其特征在于,所述通过运行所述宏,获取当前位置信息,包括:通过运行所述宏,获取编译系统的系统信息;从系统信息中获取当前位置信息。4.根据权利要求1所述的程序段检测方法,其特征在于,所述通过打印函数输出所述位置信息,包括:通过打印函数输出位置信息的字段名...

【专利技术属性】
技术研发人员:闫冬雪
申请(专利权)人:天脉聚源北京传媒科技有限公司
类型:发明
国别省市:北京,11

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

1