CN104407978A - 一种软件自动化测试方法和装置 - Google Patents
一种软件自动化测试方法和装置 Download PDFInfo
- Publication number
- CN104407978A CN104407978A CN201410773553.0A CN201410773553A CN104407978A CN 104407978 A CN104407978 A CN 104407978A CN 201410773553 A CN201410773553 A CN 201410773553A CN 104407978 A CN104407978 A CN 104407978A
- Authority
- CN
- China
- Prior art keywords
- service component
- tested
- test
- storehouse
- operations
- 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.)
- Pending
Links
Abstract
本发明公开了一种软件自动化测试方法和装置,包括:加载待测试业务组件,获取待测试业务组件的测试信息,测试信息包括需要测试的对象属性,和/或对象操作,和/或检查动作;根据测试信息,从共享的对象资源库中获取待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作,对待测试业务组件进行测试。通过本发明方法,能够实现批量自动化测试。
Description
技术领域
本发明涉及测试技术领域,尤指一种软件自动化测试方法和装置。
背景技术
如何提升产品的质量和竞争力,高效的软件测试无疑发挥着举足轻重的作用。自动化测试就是希望能够通过自动化测试工具或其他手段,按照测试工程师的预定计划进行自动的测试,目的是减轻手工测试的劳动量,从而达到提高软件质量的目的。软件自动化测试框架是软件自动化测试能否成功的关键。
而目前,一般的软件自动化测试是盲目的,例如将系统测试的用例直接转化为自动化测试脚本,一个脚本对应一个用例,脚本之间独立、不可共享,造成脚本编写复杂、可维护性差,从而导致了自动化测试半途而废,造成了人力和物力的浪费。
发明内容
为了解决上述技术问题,本发明提供了一种软件自动化测试方法和系统,能够实现批量自动化测试。
为了达到本发明目的,本发明提供了一种软件自动化测试方法,包括:加载待测试业务组件,获取所述待测试业务组件的测试信息,所述测试信息包括需要测试的对象属性,和/或对象操作,和/或检查动作;根据所述测试信息,从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作,对所述待测试业务组件进行测试。
该方法之前还包括:预先建立对象资源库,所述对象资源库包括具体对象库和抽象对象库。
该方法还包括:预先获取用户界面UI对象的对象属性和对象操作,并将所述对象属性和对象操作存储在所述具体对象库中。
该方法还包括:预先设置业务组件检查脚本,并将所述业务组件检查脚本存储在所述抽象对象库中。
所述从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作包括:从所述具体对象库中获取待测试业务组件需要测试的对象属性和/或对象操作,和/或从所述抽象对象库中获取待测试业务组件需要测试的检查动作。
一种软件自动化测试装置,至少包括:测试模块,用于加载待测试业务组件,获取所述待测试业务组件的测试信息,所述测试信息包括需要测试的对象属性,和/或对象操作,和/或检查动作;根据所述测试信息,从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作,对所述待测试业务组件进行测试。
该装置还包括:第一预处理模块,用于预先建立对象资源库,所述对象资源库包括具体对象库和抽象对象库。
该装置还包括:第二预处理模块,用于预先获取用户界面UI对象的对象属性和对象操作,并将所述对象属性和对象操作存储在所述具体对象库中。
该装置还包括:第三预处理模块,用于预先设置业务组件检查脚本,并将所述业务组件检查脚本存储在所述抽象对象库中。
所述测试模块用于从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作,具体为:从所述具体对象库中获取待测试业务组件需要测试的对象属性和/或对象操作,和/或从所述抽象对象库中获取待测试业务组件需要测试的检查动作。
与现有技术相比,本发明包括加载待测试业务组件,获取所述待测试业务组件的测试信息,所述测试信息包括需要测试的对象属性,和/或对象操作,和/或检查动作;根据所述测试信息,从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作,对待测试业务组件进行测试。通过本发明方法,通过预先将具体对象和抽象对象统一作为共享对象存入对象资源库中,所有测试组件可以访问和使用对象资源库,因此,根据待测试业务组件的测试信息,可以从对象资源库获取所需要的测试的具体对象和抽象对象,对待测试业务组件进行测试,从而实现了批量自动化测试。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1是本发明软件自动化测试方法的流程示意图。
图2是本发明软件自动化测试装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是本发明软件自动化测试方法的流程示意图。如图1所示,包括:
步骤11,预先建立对象资源库,该对象资源库包括具体对象库和抽象对象库。
在本步骤中,该对象资源库可以供测试组件共享和调用。
步骤12,预先获取用户界面(UI,User Interface)对象的对象属性和对象操作,并将对象属性和对象操作存储在具体对象库中。
在本步骤中,可以采用专业快速测试(QTP,quicktest Professional)或者Selenium等测试工具获取UI对象的对象属性和对象操作,其中对象属性包括名称、ID、类型和值等,对象操作包括点击、选中、查看等。
步骤13,预先设置业务组件检查脚本,并将业务组件检查脚本存储在抽象对象库中。
在本步骤中,设置普遍需要的检查动作作为业务组件检查脚本,其中检查动作包括特殊字符检查、边界值检查、重名检查、最长字符检查等。
具体如何设置普遍需要的检查动作作为业务组件检查脚本属于本领域技术人员的惯用技术手段,其具体实现并不用于限定本发明的保护范围,这里不再赘述。
步骤14,加载待测试业务组件,获取待测试业务组件的测试信息,该测试信息包括需要测试的对象属性,和/或对象操作,和/或检查动作。
在本步骤中,可以按照业务流的执行顺序加载待测试业务组件。
具体如何加载待测试业务组件属于本领域技术人员的惯用技术手段,其具体实现并不用于限定本发明的保护范围,这里不再赘述。
步骤15,根据待测试业务组件的测试信息,从具体对象库中获取待测试业务组件需要测试的对象属性和/或对象操作,和/或从抽象对象库中获取待测试业务组件需要测试的检查动作,对待测试业务组件进行测试。
在本步骤中,根据测试信息中需要测试的对象属性,和/或对象操作,和/或检查动作,相应地,从具体对象库中获取待测试业务组件需要测试的对象属性和/或对象操作,和/或从抽象对象库中获取待测试业务组件需要测试的检查动作,对待测试业务组件进行测试。
如果有多个待测试业务组件,可以按照加载顺序依次进行测试。
本发明中,通过预先将具体对象和抽象对象统一作为共享对象存入对象资源库中,所有测试组件可以访问和使用对象资源库,因此,根据待测试业务组件的测试信息,可以从对象资源库获取所需要的测试的具体对象和抽象对象,对待测试业务组件进行测试,从而实现了批量自动化测试。
图2是本发明软件自动化测试装置的结构示意图,如图2所示,至少包括:
第一预处理模块,用于预先建立对象资源库,该对象资源库包括具体对象库和抽象对象库。
第二预处理模块,用于预先获取用户界面对象的对象属性和对象操作,并将对象属性和对象操作存储在具体对象库中。
第三预处理模块,用于预先设置业务组件检查脚本,并将业务组件检查脚本存储在抽象对象库中。
测试模块,用于加载待测试业务组件,获取待测试业务组件的测试信息,该测试信息包括需要测试的对象属性,和/或对象操作,和/或检查动作;根据待测试业务组件的测试信息,从具体对象库中获取待测试业务组件需要测试的对象属性和/或对象操作,和/或从抽象对象库中获取待测试业务组件需要测试的检查动作,对待测试业务组件进行测试。
本发明的软件自动化测试装置和软件自动化测试方法对应,因此,软件自动化测试装置具体的实现细节可参看软件自动化测试方法,在此不赘述。
本发明中,通过预先将具体对象和抽象对象统一作为共享对象存入对象资源库中,所有测试组件可以访问和使用对象资源库,因此,根据待测试业务组件的测试信息,可以从对象资源库获取所需要的测试的具体对象和抽象对象,对待测试业务组件进行测试,从而实现了批量自动化测试。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (10)
1.一种软件自动化测试方法,其特征在于,包括:
加载待测试业务组件,获取所述待测试业务组件的测试信息,所述测试信息包括需要测试的对象属性,和/或对象操作,和/或检查动作;
根据所述测试信息,从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作,对所述待测试业务组件进行测试。
2.根据权利要求1所述的软件自动化测试方法,其特征在于,该方法之前还包括:预先建立对象资源库,所述对象资源库包括具体对象库和抽象对象库。
3.根据权利要求2所述的软件自动化测试方法,其特征在于,该方法还包括:预先获取用户界面UI对象的对象属性和对象操作,并将所述对象属性和对象操作存储在所述具体对象库中。
4.根据权利要求2所述的软件自动化测试方法,其特征在于,该方法还包括:预先设置业务组件检查脚本,并将所述业务组件检查脚本存储在所述抽象对象库中。
5.根据权利要求3或4所述的软件自动化测试方法,其特征在于,所述从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作包括:
从所述具体对象库中获取待测试业务组件需要测试的对象属性和/或对象操作,和/或从所述抽象对象库中获取待测试业务组件需要测试的检查动作。
6.一种软件自动化测试装置,其特征在于,至少包括:
测试模块,用于加载待测试业务组件,获取所述待测试业务组件的测试信息,所述测试信息包括需要测试的对象属性,和/或对象操作,和/或检查动作;根据所述测试信息,从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作,对所述待测试业务组件进行测试。
7.根据权利要求6所述的软件自动化测试装置,其特征在于,还包括:第一预处理模块,用于预先建立对象资源库,所述对象资源库包括具体对象库和抽象对象库。
8.根据权利要求7所述的软件自动化测试装置,其特征在于,还包括:第二预处理模块,用于预先获取用户界面UI对象的对象属性和对象操作,并将所述对象属性和对象操作存储在所述具体对象库中。
9.根据权利要求7所述的软件自动化测试装置,其特征在于,还包括:第三预处理模块,用于预先设置业务组件检查脚本,并将所述业务组件检查脚本存储在所述抽象对象库中。
10.根据权利要求8或9所述的软件自动化测试装置,其特征在于,所述测试模块用于从共享的对象资源库中获取所述待测试业务组件需要测试的对象属性,和/或对象操作,和/或检查动作,具体为:
从所述具体对象库中获取待测试业务组件需要测试的对象属性和/或对象操作,和/或从所述抽象对象库中获取待测试业务组件需要测试的检查动作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410773553.0A CN104407978A (zh) | 2014-12-12 | 2014-12-12 | 一种软件自动化测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410773553.0A CN104407978A (zh) | 2014-12-12 | 2014-12-12 | 一种软件自动化测试方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104407978A true CN104407978A (zh) | 2015-03-11 |
Family
ID=52645611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410773553.0A Pending CN104407978A (zh) | 2014-12-12 | 2014-12-12 | 一种软件自动化测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104407978A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243013A (zh) * | 2015-09-17 | 2016-01-13 | 浪潮(北京)电子信息产业有限公司 | 一种软件测试方法与系统 |
CN108345532A (zh) * | 2017-01-23 | 2018-07-31 | 中国移动通信集团浙江有限公司 | 一种自动化测试用例生成方法和装置 |
CN109408372A (zh) * | 2018-09-26 | 2019-03-01 | 平安普惠企业管理有限公司 | 公共组件测试方法、装置、计算机设备和存储介质 |
CN112597025A (zh) * | 2020-12-25 | 2021-04-02 | 中国农业银行股份有限公司 | 一种测试案例生成方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103150251A (zh) * | 2013-03-04 | 2013-06-12 | 浪潮电子信息产业股份有限公司 | 一种智能获取自动化测试对象的方法 |
US20130263090A1 (en) * | 2012-03-30 | 2013-10-03 | Sony Online Entertainment Llc | System and method for automated testing |
CN103605609A (zh) * | 2013-12-10 | 2014-02-26 | 浪潮电子信息产业股份有限公司 | 一种适用于云计算的自动化测试框架 |
-
2014
- 2014-12-12 CN CN201410773553.0A patent/CN104407978A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130263090A1 (en) * | 2012-03-30 | 2013-10-03 | Sony Online Entertainment Llc | System and method for automated testing |
CN103150251A (zh) * | 2013-03-04 | 2013-06-12 | 浪潮电子信息产业股份有限公司 | 一种智能获取自动化测试对象的方法 |
CN103605609A (zh) * | 2013-12-10 | 2014-02-26 | 浪潮电子信息产业股份有限公司 | 一种适用于云计算的自动化测试框架 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243013A (zh) * | 2015-09-17 | 2016-01-13 | 浪潮(北京)电子信息产业有限公司 | 一种软件测试方法与系统 |
CN108345532A (zh) * | 2017-01-23 | 2018-07-31 | 中国移动通信集团浙江有限公司 | 一种自动化测试用例生成方法和装置 |
CN109408372A (zh) * | 2018-09-26 | 2019-03-01 | 平安普惠企业管理有限公司 | 公共组件测试方法、装置、计算机设备和存储介质 |
CN112597025A (zh) * | 2020-12-25 | 2021-04-02 | 中国农业银行股份有限公司 | 一种测试案例生成方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9141521B2 (en) | Method and apparatus for automatically generating a test script for a graphical user interface | |
CN107273286B (zh) | 针对任务应用的场景自动化测试平台及方法 | |
US9734263B2 (en) | Method and apparatus for efficient pre-silicon debug | |
US9076072B2 (en) | System and method for web page rendering test automation suite | |
CN104881364A (zh) | 应用于安卓系统的自动化测试方法及系统 | |
CN104407978A (zh) | 一种软件自动化测试方法和装置 | |
CN102665231B (zh) | 一种lte系统自动生成参数配置文件的方法 | |
CN103235759A (zh) | 测试用例生成方法和装置 | |
CN106020877A (zh) | 系统环境配置自动更新方法及装置 | |
CN110990274B (zh) | 一种生成测试案例的数据处理方法、装置及系统 | |
US9277432B2 (en) | Systems and methods for automated on-device performance testing of mobile applications | |
CN104484278A (zh) | 一种静态代码缺陷测试方法和装置 | |
CN105279092A (zh) | 一种软件测试的方法及装置 | |
CN111104304A (zh) | 多任务场景性能测试方法、存储介质、电子设备及系统 | |
CN104123397A (zh) | Web页面的自动化测试装置及方法 | |
CN114328250A (zh) | 软件系统自动自检方法、介质和装置 | |
CN104717103A (zh) | 一种对网络设备进行测试的方法和装置 | |
CN106557419B (zh) | 程序的测试方法及装置 | |
CN103150251A (zh) | 一种智能获取自动化测试对象的方法 | |
Tanno et al. | Test script generation based on design documents for web application testing | |
US10157049B2 (en) | Static analysis with input reduction | |
CN111737065B (zh) | 一种基于服务器接口测试的需求模型的接口测试方法及系统 | |
JP2013152667A (ja) | 操作画面の試験シナリオ生成装置、試験シナリオ生成方法およびプログラム | |
CN105468514B (zh) | 基于数据组合的测试方法及装置 | |
CN109005067B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150311 |