对命令行输出的信息进行处理的方法和装置制造方法

文档序号:6485611阅读:99来源:国知局
对命令行输出的信息进行处理的方法和装置制造方法
【专利摘要】本发明公开了一种对命令行输出的信息进行处理的方法和装置,属于计算机【技术领域】。所述方法包括:获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息;将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来;将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。所述装置包括:获取转换模块、匹配提取模块和拼接模块。本发明可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。
【专利说明】对命令行输出的信息进行处理的方法和装置
【技术领域】
[0001]本发明涉及计算机【技术领域】,特别涉及一种对命令行输出的信息进行处理的方法和装置。
【背景技术】
[0002]随着计算机技术的发展,有很多可以提供白盒测试的框架,如Ocunit、Junit、Nunit等。其中,Ocunit是苹果公司提供的可以在xcode环境下对ios平台进行白盒测试的框架。
[0003]目前,在利用Ocunit对ios平台进行白盒测试时,过程如下:通过命令行运行xcodebuild命令,编译指定target(目标)进行白盒测试,将白盒测试结果在命令行输出。
[0004]然而,在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0005]用户只能看到命令行输出的信息(如白盒测试结果),无法对命令行输出的信息进行分析、统计等处理,命令行输出的信息不能被进一步地利用,命令行输出的信息利用率低。

【发明内容】

[0006]为了提高命令行输出的信息的利用率,本发明实施例提供了一种对命令行输出的信息进行处理的方法和装置。所述技术方案如下:
[0007]一种对命令行输出的信息进行处理的方法,包括:
[0008]获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息;
[0009]将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来;
[0010]将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
[0011]一种对命令行输出的信息进行处理的装置,所述装置包括:
[0012]获取转换模块,用于获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息;
[0013]匹配提取模块,用于在所述获取转换模块得到字符串式命令行信息后,将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来;
[0014]拼接模块,用于在所述匹配提取模块将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来后,将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
[0015]本发明实施例提供的技术方案的有益效果是:
[0016]可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。
【专利附图】

【附图说明】
[0017]图1是本发明实施例1提供的一种对命令行输出的信息进行处理的方法流程图;
[0018]图2是本发明实施例2提供的一种对命令行输出的信息进行处理的方法流程图;
[0019]图3是本发明实施例3提供的一种对命令行输出的信息进行处理的装置结构示意图。
【具体实施方式】
[0020]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0021]实施例1
[0022]参见图1,本发明实施例提供了一种对命令行输出的信息进行处理的方法,包括:
[0023]101:获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
[0024]102:将字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来。
[0025]103:将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
[0026]进一步地,获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息为:
[0027]通过管道命令,获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
[0028]进一步地,将字符串式命令行信息与预设的多个字符串表达式进行匹配,并将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来,包括:
[0029]通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配;
[0030]将每行字符串式命令行信息中与任一字符串表达式匹配的信息提取出来。
[0031]进一步地,文本格式包括:
[0032]XML(extensible Markup Language,可扩展标记语言)格式、HTML(HyperTextMark-upLanguage,超文本链接标示语言)格式。
[0033]本发明实施例所述的对命令行输出的信息进行处理的方法,可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。可以将命令行输出的信息转换为XML格式、HTML格式等,使得命令行输出的信息可以用于不同的地方,进一步地提高了命令行输出的信息利用率。
[0034]本发明实施例所述的对命令行输出的信息进行处理的方法,可以将命令行输出的信息转换为任一种指定文本格式如XML格式、HTML格式等,为了便于说明,下面以利用Ocunit对ios平台进行白盒测试,白盒测试在命令行输出的信息(白盒测试结果)转换为XML格式为例进行进一步地说明。[0035]实施例2
[0036]参见图2,本发明实施例提供了一种对命令行输出的信息进行处理的方法,包括:
[0037]201:通过管道命令,获取白盒测试在命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息,将字符串式命令行信息传输给ruby脚本。
[0038]具体地,当在xcode环境下配置了一个Ocunit白盒测试target后,可以通过管道命令“I”获取白盒测试在命令行输出的信息,并将命令行输出的信息转换为字符串格式。其中,在xcode环境下配置一个Ocunit白盒测试target具体如下:xcodebuild_targettest-configuration Debug-sdk iphonesimulator4.1。
[0039]需要说明的是,“将字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来;将提取出来的字符串式命令行信息拼接为指定文本格式”可以通过编写脚本统一实现,可以采用任何脚本语言,对此不做限定,本发明实施例以采用ruby语言为例进行说明,并且ruby脚本的名称为0cunit2xml.rb。通过管道命令,获取白盒测试在命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息,将字符串式命令行信息传输给 ruby 脚本具体如下:xcodebuild_target test-conf iguration Debug-sdkiphonesimulator4.1./ocunit2xml.rb。即管道命令“ | ”会把 xcodebuild 输出的信息,当作命令行输入,传给0cunit2xml.rb。
[0040]202:ruby脚本通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配;将每行字符串式命令行信息中与任一字符串表达式匹配的信息提取出来。
[0041]其中,预设的多个字符串表达式可以根据需要提取出的信息进行设置,如需要提取出开始时间信息,则可以设置字符串表达式为=Test Suite’(\S+) ’.*startedat\s+ (.*)。
[0042]具体地,通过正则表达式的方式实现如下:
[0043]when/Test Suite,(\S+)'.*started at\s+(.*)/
[0044]stime=Time.parse ($2.to_s)
[0045]start_test_suite(stime)
[0046]通过上述正则表达式来匹配字符串式命令行信息,可以将字符串式命令行信息中包含的 “test2”和 “2011-10-23 20:51:38 GMT” 提取出来。
[0047]并且,具体地,可以将每行字符串式命令行信息中与任一字符串表达式匹配的信息提取出来后存储在字符串函数中,如上述的start_test_suite (stime)函数。
[0048]另外,并不限于通过对每行分别进行匹配的方式进行,也可以采用其他任何可行的方式实现,如采用每2行的方式进行。
[0049]203:ruby脚本将提取出来的字符串式命令行信息拼接为XML格式的命令行信息。
[0050]其中,将提取出来的字符串式命令行信息拼接为XML格式的命令行信息,可以采用现有技术的任何方式实现,此处不再赘述。
[0051]并且,具体地,可以将拼接为XML格式的字符串式命令行信息保存到指定路径的文件里。如可以保存到0cunit2xml.rb所在路径的testreports文件夹下的TEST-result.Xml文件中。[0052]本发明实施例所述的对命令行输出的信息进行处理的方法,可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。可以将命令行输出的信息转换为XML格式、HTML格式等,使得命令行输出的信息可以用于不同的地方,进一步地提高了命令行输出的信息利用率。
[0053]实施例3
[0054]参见图3,本发明实施例提供了一种对命令行输出的信息进行处理的装置,包括:
[0055]获取转换模块301,用于获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息;
[0056]匹配提取模块302,用于在获取转换模块301得到字符串式命令行信息后,将字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来;
[0057]拼接模块303,用于在匹配提取模块302将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来后,将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
[0058]进一步地,获取转换模块301包括:
[0059]获取转换单元,用于通过管道命令,获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
[0060]进一步地,匹配提取模块302包括:
[0061]匹配单元,用于在获取转换模块301得到字符串式命令行信息后,通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配;
[0062]提取单元,用于在匹配单元将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配后,将每行字符串式命令行信息中与任一字符串表达式匹配的信息提取出来。
[0063]进一步地,文本格式包括:
[0064]可扩展标记语言XML格式、超文本链接标示语言HTML格式。
[0065]本发明实施例所述的对命令行输出的信息进行处理的装置,可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。可以将命令行输出的信息转换为XML格式、HTML格式等,使得命令行输出的信息可以用于不同的地方,进一步地提高了命令行输出的信息利用率。
[0066]以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中,存储介质例如:计算机中的硬盘、光盘或软盘。
[0067]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种对命令行输出的信息进行处理的方法,其特征在于,所述方法包括: 获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息; 将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来; 将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
2.根据权利要求1所述的对命令行输出的信息进行处理的方法,其特征在于,获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息为: 通过管道命令,获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
3.根据权利要求1所述的对命令行输出的信息进行处理的方法,其特征在于,将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来,包括: 通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹`配; 将每行字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来。
4.根据权利要求1-3中任意一项权利要求所述的对命令行输出的信息进行处理的方法,其特征在于,所述指定文本格式包括: 可扩展标记语言XML格式、超文本链接标示语言HTML格式。
5.一种对命令行输出的信息进行处理的装置,其特征在于,所述装置包括: 获取转换模块,用于获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息; 匹配提取模块,用于在所述获取转换模块得到字符串式命令行信息后,将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来; 拼接模块,用于在所述匹配提取模块将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来后,将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
6.根据权利要求5所述的对命令行输出的信息进行处理的装置,其特征在于,所述获取转换模块包括: 获取转换单元,用于通过管道命令,获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
7.根据权利要求5所述的对命令行输出的信息进行处理的装置,其特征在于,所述匹配提取模块包括: 匹配单元,用于在所述获取转换模块得到字符串式命令行信息后,通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配; 提取单元,用于在所述匹配单元将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配后,将每行字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来。
8.根据权利要求5-7中任意一项权利要求所述的对命令行输出的信息进行处理的装置,其特征在于,所述指定文本格式包括: 可扩展标记语言XML格式、`超文本链接标示语言HTML格式。
【文档编号】G06F9/30GK103455307SQ201210171649
【公开日】2013年12月18日 申请日期:2012年5月29日 优先权日:2012年5月29日
【发明者】李天畅 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1