CN101110056A - 自动校验人机命令的方法及系统 - Google Patents
自动校验人机命令的方法及系统 Download PDFInfo
- Publication number
- CN101110056A CN101110056A CNA2007101456473A CN200710145647A CN101110056A CN 101110056 A CN101110056 A CN 101110056A CN A2007101456473 A CNA2007101456473 A CN A2007101456473A CN 200710145647 A CN200710145647 A CN 200710145647A CN 101110056 A CN101110056 A CN 101110056A
- Authority
- CN
- China
- Prior art keywords
- measured
- order
- execution result
- module
- command list
- 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.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了自动校验人机命令的方法,包括:步骤1,设置待测命令列表;步骤2,读取待测命令列表中的一条待测命令;步骤3,分析和检查待测命令,并在待测命令通过检查后,生成待测命令的预期执行结果,并保存预期执行结果;步骤4,将待测命令提交给目标系统,在目标系统中执行待测命令得到实际执行结果后,校验实际执行结果与保存的预期执行结果是否一致;以及步骤5,读取待测命令列表中的下一条待测命令,直到待测命令列表中没有待测命令。本发明还公开了自动校验人机命令的系统,包括待测命令列表和执行结果检查模块。通过本发明,不仅实现了自动化测试,减少了测试人员的工作量,还大大提高了检验的全面性和准确性,改善了测试效率。
Description
技术领域
本发明涉及人机命令的测试技术,具体地涉及利用在人机命令方式与目标系统交互时,对人机命令的执行是否正确进行自动化验证的方法和系统。
背景技术
通信系统中广泛使用人机命令与目标系统进行交互,通过人机命令实现对目标系统的操作和控制。因此目标系统的正确、稳定运行在很大程度上依赖于人机命令的准确执行。
目前对人机命令的测试一般都由测试人员手工完成,测试人员在系统终端输入待测的命令,系统运行后,结果显示在终端,测试人员观察运行结果是否正确,完成后再测试下一条命令。如果命令较多,测试人员的工作量将会很大,效率很低,且测试的准确性、有效性受测试人员水平和情绪影响都较大。
另一方面,人机命令的执行涉及了目标系统中的多项操作,仅从系统终端观察,不足以甚至无法判断命令是否正确执行,还要检查命令影响的系统中的各项参数是否正确,然后才能判断命令是否正确执行。例如数据配置命令要涉及对数据库的操作等,因此测试验证时要对数据库进行检查,如果涉及的数据表很多,通过手工检查每一张数据表,不仅要花大量的时间,检查的准确性也难以保证。还有些命令要求在各种条件下都能正确执行,这些因素都使得手工测试工作量大且难以对人机命令进行全面的验证,测试效果很不理想。
发明内容
根据上述问题而提出本发明,本发明的目的是提供一种自动校验人机命令的方法及系统。
根据本发明的自动校验人机命令的方法,它包括以下步骤:步骤1,设置待测命令列表;步骤2,读取待测命令列表中的一条待测命令;步骤3,分析和检查待测命令,并在待测命令通过检查后,生成待测命令的预期执行结果,并保存预期执行结果;步骤4,将待测命令提交给目标系统,在目标系统中执行待测命令得到实际执行结果后,校验实际执行结果与保存的预期执行结果是否一致;以及步骤5,读取待测命令列表中的下一条待测命令,重复步骤3和4,直到待测命令列表中没有待测命令。
在该方法中,设置待测命令列表包括:在待测命令列表中添加、删除或修改待测命令。
此外,在该方法中,还包括以下步骤:记录校验的结果。
在该方法中,步骤3包括以下处理:分析待测命令,并检查待测命令的合法性;对通过合法性检查的待测命令进行预置条件检查;执行满足预置条件的待测命令并得到执行结果;以及保存执行结果。
在该方法中,如果命令不合法,则为命令生成预期命令返回码。如果进行预置条件检查时需要检查数据库,还包括对数据库进行检查。
根据本发明的自动校验人机命令的系统,包括:待测命令列表,用于设置待测命令;测试模块,用于读取待测命令列表中的一条待测命令,分析和检查待测命令,并在待测命令通过检查后,生成待测命令的预期执行结果,保存预期执行结果,以及将待测命令提交给目标系统;以及执行结果检查模块,与测试模块连接,用于在目标系统中执行待测命令得到实际执行结果后,校验实际执行结果与保存的预期执行结果是否一致。
在该系统中,测试模块包括:测试驱动模块,读取待测命令列表中的一条待测命令;语法检查模块,用于分析待测命令,并检查待测命令的合法性;预置条件检查模块,用于对通过合法性检查的待测命令进行预置条件检查,并生成满足预置条件的待测命令的预期执行结果;以及命令提交执行模块,用于将待测命令提交给目标系统,在目标系统中执行待测命令得到实际执行结果后,将实际执行结果通过测试驱动模块传送给执行结果检查模块。
此外,在该系统中,还包括数据库检查模块,用于在进行预置条件检查时需要检查数据库的情况下,对数据库进行检查。
此外,在该系统中,还包括记录模块,用于记录执行结果检查模块的校验结果。
通过本发明的上述方面,采用python脚本仿真目标系统的执行方式,自动生成待测命令的预期执行结果,使得可以测试更多的命令参数组合,扩大了测试的范围,测试覆盖更全面。进一步地,由于对测试中的各种验证检查等操作都由python脚本来完成,不仅实现了自动化测试,减少了测试人员的工作量,还大大提高了检验的全面性和准确性,改善了测试效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是示出了根据本发明实施例的自动校验人机命令的方法的流程图;
图2是示出了根据本发明实施例的自动校验人机命令的系统的结构示意图;以及
图3是示出了根据本发明实施例的自动化执行的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1是示出了根据本发明实施例的自动校验人机命令的方法的流程图。
如图1所示,它包括以下步骤:步骤1,设置待测命令列表;步骤2,读取待测命令列表中的一条待测命令;步骤3,分析和检查待测命令,并在待测命令通过检查后,生成待测命令的预期执行结果,并保存预期执行结果;步骤4,将待测命令提交给目标系统,在目标系统中执行待测命令得到实际执行结果后,校验实际执行结果与保存的预期执行结果是否一致;以及步骤5,读取待测命令列表中的下一条待测命令,重复步骤3和4,直到待测命令列表中没有待测命令。
在该方法中,设置待测命令列表包括:在待测命令列表中添加、删除或修改待测命令。
此外,在该方法中,还包括以下步骤:记录校验的结果。
此外,在该方法中,步骤3包括以下处理:分析待测命令,并检查待测命令的合法性;对通过合法性检查的待测命令进行预置条件检查;执行满足预置条件的待测命令并得到执行结果;以及保存执行结果。
此外,在该方法中,如果命令不合法,则为命令生成预期命令返回码。如果进行预置条件检查时需要检查数据库,还包括对数据库进行检查。
图2是示出了根据本发明实施例的自动校验人机命令的系统的结构示意图。
如图2所示,包括:待测命令列表202,用于设置待测命令;测试模块,用于读取待测命令列表中的一条待测命令,分析和检查待测命令,并在待测命令通过检查后,生成待测命令的预期执行结果,保存预期执行结果,以及将待测命令提交给目标系统;以及执行结果检查模块204,与测试模块连接,用于在目标系统中执行待测命令得到实际执行结果后,校验实际执行结果与保存的预期执行结果是否一致。
在该系统中,测试模块包括:测试驱动模块206,读取待测命令列表中的一条待测命令;语法检查模块208,用于分析待测命令,并检查待测命令的合法性;预置条件检查模块210,用于对通过合法性检查的待测命令进行预置条件检查,并生成满足预置条件的待测命令的预期执行结果;以及命令提交执行模块212,用于将待测命令提交给目标系统,在目标系统中执行待测命令得到实际执行结果后,将实际执行结果通过测试驱动模块传送给执行结果检查模块。
此外,在该系统中,还包括数据库检查模块214,用于在进行预置条件检查时需要检查数据库的情况下,对数据库进行检查。
此外,在该系统中,还包括记录模块216,用于记录执行结果检查模块的校验结果。
图3是示出了根据本发明实施例的自动化执行的流程图。
下面结合图2所示的自动校验人机命令的系统,如图3所示描述根据本发明实施例的自动校验人机命令的方法。如图3所示,包括以下步骤:
(1)测试人员编辑待测命令列表202,可以在列表中添加、修改和删除待测人机命令,然后保存。
(2)测试驱动模块206读取待测命令列表202中的一条待测命令,传递给命令语法检查模块208。在该实施例中,测试驱动模块206还负责调度协调其它测试脚本,保障整个自动化测试流程的顺利执行。
(3)命令语法检查模块208仿真目标系统的执行方式,分析待测命令,对命令和参数进行合法性检查,将合法的命令通过测试驱动模块206传递给预置条件检查模块210,并对非法命令生成预期的命令返回码。
(4)预置条件检查模块210仿真目标系统的执行方式,对合法的命令执行预置条件检查,判断待测试命令的预置条件是否满足,如果需要检查数据库,可调用数据库检查模块214,然后生成命令的预期执行结果,最后将命令通过测试驱动模块206传递给命令提交执行模块212。
(5)命令提交执行模块212将待测人机命令提交到目标系统中执行,并记录命令实际执行结果,然后将执行结果通过测试驱动模块206传递给执行结果检查模块204。
(6)执行结果检查模块204检查命令的预期执行结果和实际执行结果是否一致,涉及数据库操作时可调用数据库检查模块214,检查数据库是否执行了预期操作。
(7)测试驱动模块206通过记录模块,对测试结果进行记录,以便查看和检索。
(8)测试驱动模块206接着读取待测命令列表中的下一条待测命令,重复以上步骤。
综上所述,根据本发明,采用python脚本仿真目标系统的执行方式,自动生成待测命令的预期执行结果,使得可以测试更多的命令参数组合,扩大了测试的范围,测试覆盖更全面。进一步地,由于对测试中的各种验证检查等操作都由python脚本来完成,不仅实现了自动化测试,减少了测试人员的工作量,还大大提高了检验的全面性和准确性,改善了测试效率。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种自动校验人机命令的方法,其特征在于,包括以下步骤:
步骤1,设置待测命令列表;
步骤2,读取所述待测命令列表中的一条待测命令;
步骤3,分析和检查所述待测命令,并在所述待测命令通过检查后,生成所述待测命令的预期执行结果,并保存所述预期执行结果;
步骤4,将所述待测命令提交给目标系统,在所述目标系统中执行所述待测命令得到实际执行结果后,校验实际执行结果与保存的所述预期执行结果是否一致;以及
步骤5,读取所述待测命令列表中的下一条待测命令,重复步骤3和4,直到所述待测命令列表中没有待测命令。
2.根据权利要求1所述的方法,其特征在于,所述设置待测命令列表包括:在所述待测命令列表中添加、删除或修改待测命令。
3.根据权利要求1或2所述的方法,其特征在于,还包括以下步骤:
记录校验的结果。
4.根据权利要求3所述的方法,其特征在于,所述步骤3包括以下处理:
分析所述待测命令,并检查所述待测命令的合法性;
对通过所述合法性检查的待测命令进行预置条件检查;
执行满足所述预置条件的待测命令并得到所述执行结果;
以及
保存所述执行结果。
5.根据权利要求4所述的方法,其特征在于,如果所述命令不合法,则为所述命令生成预期命令返回码。
6.根据权利要求4所述的方法,其特征在于,如果进行预置条件检查时需要检查数据库,还包括:
对所述数据库进行检查。
7.一种自动校验人机命令的系统,其特征在于,包括:
待测命令列表,用于设置待测命令;
测试模块,用于读取所述待测命令列表中的一条待测命令,分析和检查所述待测命令,并在所述待测命令通过检查后,生成所述待测命令的预期执行结果,保存所述预期执行结果,以及将所述待测命令提交给目标系统;以及
执行结果检查模块,与所述测试模块连接,用于在所述目标系统中执行所述待测命令得到实际执行结果后,校验实际执行结果与保存的所述预期执行结果是否一致。
8.根据权利要求7所述的系统,其特征在于,所述测试模块包括:测试驱动模块,读取所述待测命令列表中的一条待测命令;
语法检查模块,用于分析所述待测命令,并检查所述待测命令的合法性;
预置条件检查模块,用于对通过所述合法性检查的待测命令进行预置条件检查,并生成满足所述预置条件的待测命令的预期执行结果;以及
命令提交执行模块,用于将所述待测命令提交给目标系统,在所述目标系统中执行所述待测命令得到实际执行结果后,将所述实际执行结果通过所述测试驱动模块传送给所述执行结果检查模块。
9.根据权利要求8所述的系统,其特征在于,还包括;数据库检查模块,用于在进行预置条件检查时需要检查数据库的情况下,对所述数据库进行检查。
10.根据权利要求7至9中任一项所述的系统,其特征在于,还包括:
记录模块,用于记录所述执行结果检查模块的校验结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101456473A CN100501698C (zh) | 2007-09-06 | 2007-09-06 | 自动校验人机命令的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101456473A CN100501698C (zh) | 2007-09-06 | 2007-09-06 | 自动校验人机命令的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101110056A true CN101110056A (zh) | 2008-01-23 |
CN100501698C CN100501698C (zh) | 2009-06-17 |
Family
ID=39042135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101456473A Expired - Fee Related CN100501698C (zh) | 2007-09-06 | 2007-09-06 | 自动校验人机命令的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100501698C (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102467442A (zh) * | 2010-11-02 | 2012-05-23 | 腾讯科技(深圳)有限公司 | 一种软件测试的方法、系统和设备 |
CN106227670A (zh) * | 2016-08-05 | 2016-12-14 | 成都广达新网科技股份有限公司 | 一种epon设备命令自动检测方法 |
-
2007
- 2007-09-06 CN CNB2007101456473A patent/CN100501698C/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102467442A (zh) * | 2010-11-02 | 2012-05-23 | 腾讯科技(深圳)有限公司 | 一种软件测试的方法、系统和设备 |
CN102467442B (zh) * | 2010-11-02 | 2015-04-29 | 腾讯科技(深圳)有限公司 | 一种软件测试的方法、系统和设备 |
CN106227670A (zh) * | 2016-08-05 | 2016-12-14 | 成都广达新网科技股份有限公司 | 一种epon设备命令自动检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100501698C (zh) | 2009-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107957986B (zh) | 一种计量检定校准原始记录智能编辑方法及系统 | |
CN101377759B (zh) | 自动化界面测试系统 | |
CN106294171B (zh) | 产品自动部署的测试系统、方法和装置 | |
CN103164328B (zh) | 一种业务功能的回归测试方法、装置及系统 | |
CN106326116B (zh) | 产品测试的方法和装置 | |
CN100451986C (zh) | 网络芯片的自动化验证方法 | |
CN103530209B (zh) | 一种密码键盘自动化测试方法 | |
CN112579437B (zh) | 一种程序运行过程符合性验证方法 | |
CN106529229A (zh) | 权限数据的处理方法和装置 | |
CN115328784A (zh) | 一种面向敏捷接口的自动化测试方法及系统 | |
CN113010413A (zh) | 一种接口自动化测试方法和装置 | |
CN107015911A (zh) | 持续集成的代码评审方法及装置 | |
CN111611154B (zh) | 一种回归测试的方法、装置和设备 | |
CN107832176A (zh) | 一种Windows下硬盘压力自动测试方法及系统 | |
CN100501698C (zh) | 自动校验人机命令的方法及系统 | |
CN101510172B (zh) | 测试系统及方法 | |
CN107491395A (zh) | 一种自定义测试用例框架使用方法 | |
US8412180B2 (en) | Method for generating a signal train which can be played back on a tester for testing a mobile radio | |
CN114661615B (zh) | 一种fpga软件测试方法和设备 | |
CN105653445A (zh) | 一种满足do-178c测试结果的实现方法 | |
CN102169160B (zh) | 一种集成电路的管脚复用的验证装置和验证方法 | |
KR100969877B1 (ko) | 품질테스트자동화시스템 | |
CN111444108A (zh) | 一种基于s7工业协议的行为审计自动化测试方法 | |
CN106681899A (zh) | 基于Jmeter的安卓UI自动化测试方法及系统 | |
CN113495826A (zh) | 一种单元测试代码的生成方法、单元测试方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090617 Termination date: 20160906 |
|
CF01 | Termination of patent right due to non-payment of annual fee |