CN103455307B - 对命令行输出的信息进行处理的方法和装置 - Google Patents

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

Info

Publication number
CN103455307B
CN103455307B CN201210171649.0A CN201210171649A CN103455307B CN 103455307 B CN103455307 B CN 103455307B CN 201210171649 A CN201210171649 A CN 201210171649A CN 103455307 B CN103455307 B CN 103455307B
Authority
CN
China
Prior art keywords
information
order line
character string
order
string data
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.)
Active
Application number
CN201210171649.0A
Other languages
English (en)
Other versions
CN103455307A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201210171649.0A priority Critical patent/CN103455307B/zh
Publication of CN103455307A publication Critical patent/CN103455307A/zh
Application granted granted Critical
Publication of CN103455307B publication Critical patent/CN103455307B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Document Processing Apparatus (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种对命令行输出的信息进行处理的方法和装置,属于计算机技术领域。所述方法包括:获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息;将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来;将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。所述装置包括:获取转换模块、匹配提取模块和拼接模块。本发明可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。

Description

对命令行输出的信息进行处理的方法和装置
技术领域
本发明涉及计算机技术领域,特别涉及一种对命令行输出的信息进行处理的方法和装置。
背景技术
随着计算机技术的发展,有很多可以提供白盒测试的框架,如Ocunit、Junit、Nunit等。其中,Ocunit是苹果公司提供的可以在xcode环境下对ios平台进行白盒测试的框架。
目前,在利用Ocunit对ios平台进行白盒测试时,过程如下:通过命令行运行xcodebuild命令,编译指定target(目标)进行白盒测试,将白盒测试结果在命令行输出。
然而,在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
用户只能看到命令行输出的信息(如白盒测试结果),无法对命令行输出的信息进行分析、统计等处理,命令行输出的信息不能被进一步地利用,命令行输出的信息利用率低。
发明内容
为了提高命令行输出的信息的利用率,本发明实施例提供了一种对命令行输出的信息进行处理的方法和装置。所述技术方案如下:
一种对命令行输出的信息进行处理的方法,包括:
获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息;
将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来;
将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
一种对命令行输出的信息进行处理的装置,所述装置包括:
获取转换模块,用于获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息;
匹配提取模块,用于在所述获取转换模块得到字符串式命令行信息后,将所述字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来;
拼接模块,用于在所述匹配提取模块将所述字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来后,将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
本发明实施例提供的技术方案的有益效果是:
可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。
附图说明
图1是本发明实施例1提供的一种对命令行输出的信息进行处理的方法流程图;
图2是本发明实施例2提供的一种对命令行输出的信息进行处理的方法流程图;
图3是本发明实施例3提供的一种对命令行输出的信息进行处理的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
参见图1,本发明实施例提供了一种对命令行输出的信息进行处理的方法,包括:
101:获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
102:将字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来。
103:将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
进一步地,获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息为:
通过管道命令,获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
进一步地,将字符串式命令行信息与预设的多个字符串表达式进行匹配,并将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来,包括:
通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配;
将每行字符串式命令行信息中与任一字符串表达式匹配的信息提取出来。
进一步地,文本格式包括:
XML(eXtensible Markup Language,可扩展标记语言)格式、HTML(HyperTextMark-upLanguage,超文本链接标示语言)格式。
本发明实施例所述的对命令行输出的信息进行处理的方法,可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。可以将命令行输出的信息转换为XML格式、HTML格式等,使得命令行输出的信息可以用于不同的地方,进一步地提高了命令行输出的信息利用率。
本发明实施例所述的对命令行输出的信息进行处理的方法,可以将命令行输出的信息转换为任一种指定文本格式如XML格式、HTML格式等,为了便于说明,下面以利用Ocunit对ios平台进行白盒测试,白盒测试在命令行输出的信息(白盒测试结果)转换为XML格式为例进行进一步地说明。
实施例2
参见图2,本发明实施例提供了一种对命令行输出的信息进行处理的方法,包括:
201:通过管道命令,获取白盒测试在命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息,将字符串式命令行信息传输给ruby脚本。
具体地,当在xcode环境下配置了一个Ocunit白盒测试target后,可以通过管道命令“|”获取白盒测试在命令行输出的信息,并将命令行输出的信息转换为字符串格式。其中,在xcode环境下配置一个Ocunit白盒测试target具体如下:xcodebuild-target test-configuration Debug-sdk iphonesimulator4.1。
需要说明的是,“将字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来;将提取出来的字符串式命令行信息拼接为指定文本格式”可以通过编写脚本统一实现,可以采用任何脚本语言,对此不做限定,本发明实施例以采用ruby语言为例进行说明,并且ruby脚本的名称为Ocunit2xml.rb。通过管道命令,获取白盒测试在命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息,将字符串式命令行信息传输给ruby脚本具体如下:xcodebuild-target test-configuration Debug-sdk iphonesimulator4.1|./ocunit2xml.rb。即管道命令“|”会把xcodebuild输出的信息,当作命令行输入,传给Ocunit2xml.rb。
202:ruby脚本通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配;将每行字符串式命令行信息中与任一字符串表达式匹配的信息提取出来。
其中,预设的多个字符串表达式可以根据需要提取出的信息进行设置,如需要提取出开始时间信息,则可以设置字符串表达式为:Test Suite'(\S+)'.*startedat\s+(.*)。
具体地,通过正则表达式的方式实现如下:
when/Test Suite'(\S+)'.*started at\s+(.*)/
stime=Time.parse($2.to_s)
start_test_suite(stime)
通过上述正则表达式来匹配字符串式命令行信息,可以将字符串式命令行信息中包含的“test2”和“2011-10-23 20:51:38 GMT”提取出来。
并且,具体地,可以将每行字符串式命令行信息中与任一字符串表达式匹配的信息提取出来后存储在字符串函数中,如上述的start_test_suite(stime)函数。
另外,并不限于通过对每行分别进行匹配的方式进行,也可以采用其他任何可行的方式实现,如采用每2行的方式进行。
203:ruby脚本将提取出来的字符串式命令行信息拼接为XML格式的命令行信息。
其中,将提取出来的字符串式命令行信息拼接为XML格式的命令行信息,可以采用现有技术的任何方式实现,此处不再赘述。
并且,具体地,可以将拼接为XML格式的字符串式命令行信息保存到指定路径的文件里。如可以保存到Ocunit2xml.rb所在路径的testreports文件夹下的TEST-result.Xml文件中。
本发明实施例所述的对命令行输出的信息进行处理的方法,可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。可以将命令行输出的信息转换为XML格式、HTML格式等,使得命令行输出的信息可以用于不同的地方,进一步地提高了命令行输出的信息利用率。
实施例3
参见图3,本发明实施例提供了一种对命令行输出的信息进行处理的装置,包括:
获取转换模块301,用于获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息;
匹配提取模块302,用于在获取转换模块301得到字符串式命令行信息后,将字符串式命令行信息分别与预设的多个字符串表达式进行匹配,并将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来;
拼接模块303,用于在匹配提取模块302将字符串式命令行信息中与任一字符串表达式匹配的信息提取出来后,将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
进一步地,获取转换模块301包括:
获取转换单元,用于通过管道命令,获取命令行输出的信息,并将命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
进一步地,匹配提取模块302包括:
匹配单元,用于在获取转换模块301得到字符串式命令行信息后,通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配;
提取单元,用于在匹配单元将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配后,将每行字符串式命令行信息中与任一字符串表达式匹配的信息提取出来。
进一步地,文本格式包括:
可扩展标记语言XML格式、超文本链接标示语言HTML格式。
本发明实施例所述的对命令行输出的信息进行处理的装置,可以将命令行输出的信息转换为指定文本格式,使得可以对命令行输出的信息进行分析、统计等处理,使得命令行输出的信息可以被进一步地利用,提高了命令行输出的信息利用率。可以将命令行输出的信息转换为XML格式、HTML格式等,使得命令行输出的信息可以用于不同的地方,进一步地提高了命令行输出的信息利用率。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中,存储介质例如:计算机中的硬盘、光盘或软盘。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种对命令行输出的信息进行处理的方法,其特征在于,所述方法包括:
获取白盒测试在命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息,所述命令行输出信息为白盒测试结果;
通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配;
将每行字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来;
将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
2.根据权利要求1所述的对命令行输出的信息进行处理的方法,其特征在于,获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息为:
通过管道命令,获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
3.根据权利要求1或2所述的对命令行输出的信息进行处理的方法,其特征在于,所述指定文本格式包括:
可扩展标记语言XML格式、超文本链接标示语言HTML格式。
4.一种对命令行输出的信息进行处理的装置,其特征在于,所述装置包括:
获取转换模块,用于获取白盒测试在命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息,所述命令行输出信息为白盒测试结果;
匹配提取模块,用于在所述获取转换模块得到字符串式命令行信息后,通过正则表达式,将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配;将每行字符串式命令行信息分别与预设的多个字符串表达式进行匹配后,将每行字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来;
拼接模块,用于在所述匹配提取模块将每行字符串式命令行信息中与任一所述字符串表达式匹配的信息提取出来后,将提取出来的字符串式命令行信息拼接为指定文本格式的命令行信息。
5.根据权利要求4所述的对命令行输出的信息进行处理的装置,其特征在于,所述获取转换模块包括:
获取转换单元,用于通过管道命令,获取命令行输出的信息,并将所述命令行输出的信息转换为字符串格式,得到字符串式命令行信息。
6.根据权利要求4或5所述的对命令行输出的信息进行处理的装置,其特征在于,所述指定文本格式包括:
可扩展标记语言XML格式、超文本链接标示语言HTML格式。
CN201210171649.0A 2012-05-29 2012-05-29 对命令行输出的信息进行处理的方法和装置 Active CN103455307B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210171649.0A CN103455307B (zh) 2012-05-29 2012-05-29 对命令行输出的信息进行处理的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210171649.0A CN103455307B (zh) 2012-05-29 2012-05-29 对命令行输出的信息进行处理的方法和装置

Publications (2)

Publication Number Publication Date
CN103455307A CN103455307A (zh) 2013-12-18
CN103455307B true CN103455307B (zh) 2018-02-23

Family

ID=49737721

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210171649.0A Active CN103455307B (zh) 2012-05-29 2012-05-29 对命令行输出的信息进行处理的方法和装置

Country Status (1)

Country Link
CN (1) CN103455307B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106131864A (zh) * 2016-06-30 2016-11-16 上海斐讯数据通信技术有限公司 一种无线网络数据测试方法
CN107480112A (zh) * 2017-08-11 2017-12-15 郑州云海信息技术有限公司 一种命令行信息输出的方法及装置
CN107832115A (zh) * 2017-11-24 2018-03-23 郑州云海信息技术有限公司 一种命令行参数格式表示结构及方法
CN110427773A (zh) * 2019-06-28 2019-11-08 平安科技(深圳)有限公司 信息处理方法、装置、存储介质及终端设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1828591A (zh) * 2005-03-04 2006-09-06 微软公司 命令行数据类型发现和转换
US7254751B2 (en) * 2003-04-14 2007-08-07 Microsoft Corporation System and method for persisting error information in a command line environment
US7278143B2 (en) * 2001-06-28 2007-10-02 Microsoft Corporation System and related methods for accessing management functionality through a command line utility
CN101110703A (zh) * 2007-06-28 2008-01-23 中兴通讯股份有限公司 可定制的命令行实现方法和系统
CN101405721A (zh) * 2006-03-15 2009-04-08 微软公司 命令行流水线化
CN101494573A (zh) * 2009-03-17 2009-07-29 杭州华三通信技术有限公司 一种故障的诊断方法、系统和设备
US7594170B2 (en) * 2003-10-24 2009-09-22 Microsoft Corporation Mechanism for providing data driven command line output
CN102402480A (zh) * 2011-10-12 2012-04-04 吴华中 电路板固件命令行调试(测试)工具

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7278143B2 (en) * 2001-06-28 2007-10-02 Microsoft Corporation System and related methods for accessing management functionality through a command line utility
US7254751B2 (en) * 2003-04-14 2007-08-07 Microsoft Corporation System and method for persisting error information in a command line environment
US7594170B2 (en) * 2003-10-24 2009-09-22 Microsoft Corporation Mechanism for providing data driven command line output
CN1828591A (zh) * 2005-03-04 2006-09-06 微软公司 命令行数据类型发现和转换
CN101405721A (zh) * 2006-03-15 2009-04-08 微软公司 命令行流水线化
CN101110703A (zh) * 2007-06-28 2008-01-23 中兴通讯股份有限公司 可定制的命令行实现方法和系统
CN101494573A (zh) * 2009-03-17 2009-07-29 杭州华三通信技术有限公司 一种故障的诊断方法、系统和设备
CN102402480A (zh) * 2011-10-12 2012-04-04 吴华中 电路板固件命令行调试(测试)工具

Also Published As

Publication number Publication date
CN103455307A (zh) 2013-12-18

Similar Documents

Publication Publication Date Title
CN103455307B (zh) 对命令行输出的信息进行处理的方法和装置
TW201810076A (zh) 前端用戶行為統計方法及裝置
CN104699714B (zh) 将书版格式文件转换为epub格式文件的方法及装置
CN103902269B (zh) 一种通过xml文件生成mib文件的系统及方法
CN106325969A (zh) 需求变更的逆向追踪系统
CN106919612A (zh) 一种上线结构化查询语言脚本的处理方法及装置
CN104376043B (zh) 日志记录与显示方法及装置
CN103699591A (zh) 一种基于示例页面的网页正文提取方法
CN105095091B (zh) 一种基于倒排索引技术的软件缺陷代码文件定位方法
CN105404514B (zh) JavaScript渲染方法和装置
CN104320793B (zh) 一种手机短信自动化测试方法及系统
CN104346407B (zh) 数据申报系统中报表和xml文件数据交互的方法及其装置
CN106776340A (zh) 一种通用的服务器Sensor自动测试方法
CN104699473B (zh) 时序约束文件的生成方法、装置以及rtl仿真设备
CN105426305A (zh) 一种控件属性解析系统及方法
CN102693300A (zh) 教学软件的试题生成方法
CN106570133A (zh) 一种可视化的网页信息提取规则的构建方法和装置
Wang et al. A search of Verilog code plagiarism detection method
CN101458653A (zh) 一种税控收款机自动测试方法
CN107239405A (zh) 一种基于Android多浏览器内核的自动化测试方法
US9274910B2 (en) Automatic test map generation for system verification test
CN109471637A (zh) 电路图的审查脚本调试方法
CN104268314B (zh) 基于Easy HDL仿真逻辑分析仪测得波形方法
Derczynski et al. Massively increasing TIMEX3 resources: a transduction approach
WO2010038997A3 (en) Method and apparatus for encoding and decoding xml documents using path code

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant