CN112346983A - 一种测试案例自动化生成的方法和系统 - Google Patents
一种测试案例自动化生成的方法和系统 Download PDFInfo
- Publication number
- CN112346983A CN112346983A CN202011326556.1A CN202011326556A CN112346983A CN 112346983 A CN112346983 A CN 112346983A CN 202011326556 A CN202011326556 A CN 202011326556A CN 112346983 A CN112346983 A CN 112346983A
- Authority
- CN
- China
- Prior art keywords
- factor
- test
- scene
- case
- factors
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 93
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000004806 packaging method and process Methods 0.000 claims abstract description 11
- 238000000889 atomisation Methods 0.000 claims description 6
- 238000012552 review Methods 0.000 claims description 3
- 230000001502 supplementing effect Effects 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000012858 packaging process Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种测试案例自动化生成的方法和系统,通过将测试案例中涉及到的被测试关键信息抽象为因子,测试信息之间的逻辑关系抽象为规则,被测试的场景根据因子和规则进行封装,案例由场景根据算法自动生成,可以实现正反测试案例同时批量自动生成,大大缓解了用户手工编写测试案例费时费力同时测试案例仍覆盖不全面的问题。
Description
技术领域
本发明涉及计算机测试技术领域,尤其涉及一种测试案例自动化生成的方法和系统。
背景技术
软件开发是一项庞大的系统工程,由于涉及众多不同系统功能,在开发过程中难以保证运行100%稳定,这对于严格要求软件运行稳定性的行业,例如银行等,是一个必须解决的问题。因此,通常采用预先准备的测试案例对软件各种功能模块、各种使用环境进行测试,以发现软件中任何可能存在的稳定性问题或任何其他可能影响软件上线后正常运行的问题。显然,测试案例是否能够完全覆盖软件各种使用情况,是测试能否起到效果的重要影响因素。
在现有技术中,一般采用人工编写案例和使用测试案例生成工具制作案例两种解决办法。其中,采用人工编写测试案例费事费力且测试用例覆盖不全,需要耗费大量人力和时间,且这样生成的案例基本不具有复用性,针对不同软件需要重新编写,工作效率低;现有的测试案例生成工具,需要具有较强的程序技术知识,对于使用要求具备相当的门槛,且能够生成的测试案例逻辑较为简单,不能很好地适应如银行业务等链路较长且逻辑复杂使用环境的测试。
发明内容
为解决现有技术的不足,本发明提出一种测试案例自动化生成的方法和系统,通过将测试案例中涉及到的被测试关键信息抽象为因子,测试信息之间的逻辑关系抽象为规则,被测试的场景根据因子和规则进行封装,案例由场景根据算法自动生成,可以实现正反测试案例同时批量自动生成,大大缓解了用户手工编写测试案例费时费力同时测试案例仍覆盖不全面的问题。
为实现以上目的,本发明所采用的技术方案包括:
一种测试案例自动化生成的方法,其特征在于,包括:
S1、根据测试需求获取测试信息并原子化为因子;
S2、根据测试需求配置因子之间的关系得到规则引擎;
S3、根据选定的因子依据规则引擎封装为场景;
S4、根据场景生成测试案例。
进一步地,还包括:
S5、将步骤S4生成的测试案例提交人工审核。
进一步地,所述因子包括事件因子、条件因子、产品因子、渠道因子、结果因子、时间因子和用户因子,所述测试信息分类原子化为事件因子、条件因子、产品因子、渠道因子、结果因子、时间因子和用户因子。
进一步地,所述规则引擎包括不同因子之间的组合所形成的关系。
进一步地,所述规则引擎包括产品渠道、用户渠道、产品事件、事件时间、用户事件、事件条件和条件条件。
进一步地,所述步骤S4包括以下分步骤:
S41、依据场景生成场景条件记录,所述场景条件记录包括组合关系场景条件记录、无组合关系场景条件记录和反案例场景条件记录;
S42、将组合关系场景条件记录与无组合关系场景条件记录相互依次组合形成测试场景条件记录;
S43、将测试场景条件记录和反案例场景条件记录与因子描述拼接获得用于生成测试案例的完整场景案例信息。
进一步地,所述步骤S4还包括以下分步骤:
S44、查询当前选定的因子下是否存在子案例,如果是,则将子案例与因子描述拼接并补充入完整场景案例信息。
进一步地,所述步骤S4还包括以下分步骤:
S45、依据完整场景案例信息中除选定的因子之外的其他因子相关规则引擎剔除完整场景案例信息中不符合规则引擎的信息。
本发明还涉及一种测试案例自动化生成的系统,其特征在于,包括:
因子模块,用于根据测试需求获取测试信息并原子化为因子;
规则引擎模块,用于根据测试需求配置因子之间的关系得到规则引擎;
场景封装模块,用于根据选定的因子依据规则引擎封装为场景;
测试案例生成模块,用于根据场景生成测试案例。
本发明还涉及一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
本发明的有益效果为:
采用本发明所述测试案例自动化生成的方法和系统,根据测试案例编写的原则,实现测试案例自动化生成,可以根据自定义的规则实现正反案例自动生成,确保测试案例自动化生成为主,人工辅助评审为辅,保证测试案例覆盖全面且可用性高,特别适用于银行业等长链路、复杂逻辑的测试场景使用。
附图说明
图1为本发明测试案例自动化生成的方法流程示意图。
图2为本发明测试案例自动化生成的系统结构示意图。
具体实施方式
为了更清楚的理解本发明的内容,将结合附图和实施例详细说明。
本发明的第一部分,提供了一种如图1所示的测试案例自动化生成的方法,包括以下步骤:
S1、根据测试需求获取测试信息并原子化为因子;所述因子即为测试案例中涉及到的被测试关键信息抽象所得,依据信息类别不同,划分为事件因子、条件因子、产品因子、渠道因子、结果因子、时间因子和用户因子。
S2、根据测试需求配置因子之间的关系得到规则引擎;测试信息(因子)之间的逻辑关系抽象为规则,所述规则引擎包括不同因子之间的组合所形成的关系,例如可以包括产品渠道、用户渠道、产品事件、事件时间、用户事件、事件条件和条件条件等,特别是,不能满足业务需求的情况可以在规则引擎中配置事件因子下的条件因子与条件因子之间的关系,用以进行排除筛选。
S3、根据选定的因子依据规则引擎封装为场景;特别是指以某一个事件因子为中心,根据相关规则引擎将其他类型因子与该事件因子进行绑定,自动化完成场景的封装过程。
S4、根据场景生成测试案例;特别是,测试案例由场景根据算法自动生成,并可依据需要选择单条或批量生成测试案例。生成测试案例的算法优选的可以包括:S41、依据场景生成场景条件记录,所述场景条件记录包括组合关系场景条件记录、无组合关系场景条件记录和反案例场景条件记录;S42、将组合关系场景条件记录与无组合关系场景条件记录相互依次组合形成测试场景条件记录;S43、将测试场景条件记录和反案例场景条件记录与因子描述拼接获得用于生成测试案例的完整场景案例信息;S44、查询当前选定的因子下是否存在子案例,如果是,则将子案例与因子描述拼接并补充入完整场景案例信息;S45、依据完整场景案例信息中除选定的因子之外的其他因子相关规则引擎剔除完整场景案例信息中不符合规则引擎的信息。
S5、将步骤S4生成的测试案例提交人工审核,可以保证测试案例的正确性和可用性。
本发明第二部分涉及一种如图2所示的测试案例自动化生成的系统,包括:
因子模块,用于根据测试需求获取测试信息并原子化为因子;
规则引擎模块,用于根据测试需求配置因子之间的关系得到规则引擎;
场景封装模块,用于根据选定的因子依据规则引擎封装为场景;
测试案例生成模块,用于根据场景生成测试案例。
以下通过一个具体实施例,进一步说明本发明。
针对手机银行中购买某指定理财产品为例,采用本发明针对这一应用场景生成测试案例包括如下步骤:
(1)按照测试需求梳理因子,包含:用户因子,当前登陆用户;时间因子,自然日0:00-24:00;结果因子,成功、失败(2个);渠道因子,手机银行;产品因子,指定理财产品;事件因子,购买指定理财产品;条件因子,转出银行卡账号、可用余额、转入金额等当前交易需要的页面字段。
(2)根据业务需求配置其中部分因子间的关系,当前需求配置的规则引擎包括:产品渠道为级联关系,用户渠道为级联关系,事件条件为右覆盖关系等。
(3)根据需求自定义场景名称为手机银行购买指定理财产品,选择一个事件因子:购买指定理财产品为选定的因子,根据配置好的规则引擎将其他因子自动带出,按需求选择相关的其他因子,自动做场景封装操作。
(4)选择已封装好的场景单条或批量生成测试案例,生成后可提交系统管理员人工审核。
以上所述仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换等都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (10)
1.一种测试案例自动化生成的方法,其特征在于,包括:
S1、根据测试需求获取测试信息并原子化为因子;
S2、根据测试需求配置因子之间的关系得到规则引擎;
S3、根据选定的因子依据规则引擎封装为场景;
S4、根据场景生成测试案例。
2.如权利要求1所述的方法,其特征在于,还包括:
S5、将步骤S4生成的测试案例提交人工审核。
3.如权利要求1所述的方法,其特征在于,所述因子包括事件因子、条件因子、产品因子、渠道因子、结果因子、时间因子和用户因子,所述测试信息分类原子化为事件因子、条件因子、产品因子、渠道因子、结果因子、时间因子和用户因子。
4.如权利要求3所述的方法,其特征在于,所述规则引擎包括不同因子之间的组合所形成的关系。
5.如权利要求4所述的方法,其特征在于,所述规则引擎包括产品渠道、用户渠道、产品事件、事件时间、用户事件、事件条件和条件条件。
6.如权利要求1所述的方法,其特征在于,所述步骤S4包括以下分步骤:
S41、依据场景生成场景条件记录,所述场景条件记录包括组合关系场景条件记录、无组合关系场景条件记录和反案例场景条件记录;
S42、将组合关系场景条件记录与无组合关系场景条件记录相互依次组合形成测试场景条件记录;
S43、将测试场景条件记录和反案例场景条件记录与因子描述拼接获得用于生成测试案例的完整场景案例信息。
7.如权利要求6所述的方法,其特征在于,所述步骤S4还包括以下分步骤:
S44、查询当前选定的因子下是否存在子案例,如果是,则将子案例与因子描述拼接并补充入完整场景案例信息。
8.如权利要求7所述的方法,其特征在于,所述步骤S4还包括以下分步骤:
S45、依据完整场景案例信息中除选定的因子之外的其他因子相关规则引擎剔除完整场景案例信息中不符合规则引擎的信息。
9.一种测试案例自动化生成的系统,其特征在于,包括:
因子模块,用于根据测试需求获取测试信息并原子化为因子;
规则引擎模块,用于根据测试需求配置因子之间的关系得到规则引擎;
场景封装模块,用于根据选定的因子依据规则引擎封装为场景;
测试案例生成模块,用于根据场景生成测试案例。
10.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011326556.1A CN112346983B (zh) | 2020-11-24 | 2020-11-24 | 一种测试案例自动化生成的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011326556.1A CN112346983B (zh) | 2020-11-24 | 2020-11-24 | 一种测试案例自动化生成的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112346983A true CN112346983A (zh) | 2021-02-09 |
CN112346983B CN112346983B (zh) | 2024-05-17 |
Family
ID=74365465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011326556.1A Active CN112346983B (zh) | 2020-11-24 | 2020-11-24 | 一种测试案例自动化生成的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112346983B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521122A (zh) * | 2011-11-23 | 2012-06-27 | 北京交通大学 | 面向动态场景的测试序列生成方法及系统 |
CN103049382A (zh) * | 2012-12-27 | 2013-04-17 | 中国建设银行股份有限公司 | 用于软件模块测试的测试案例生成方法及装置 |
CN105955890A (zh) * | 2016-05-13 | 2016-09-21 | 中国建设银行股份有限公司 | 一种功能测试案例的生成方法及装置 |
US20170132117A1 (en) * | 2015-11-06 | 2017-05-11 | Ford Global Technologies, Llc | Method and device for generating test cases for autonomous vehicles |
US20170161180A1 (en) * | 2015-12-03 | 2017-06-08 | Wipro Limited | System and Method for Optimizing Test Suite Comprising Plurality of Test Cases |
CN106845781A (zh) * | 2016-12-22 | 2017-06-13 | 中信银行股份有限公司 | 用于业务测试的场景及流程的生成系统和方法 |
CN110865941A (zh) * | 2019-11-11 | 2020-03-06 | 中信百信银行股份有限公司 | 接口测试用例生成方法、装置和系统 |
US20200117583A1 (en) * | 2018-10-16 | 2020-04-16 | Dell Products L. P. | Automated testcase build engine and prediction-based test system |
CN111427784A (zh) * | 2020-03-24 | 2020-07-17 | 中国建设银行股份有限公司 | 一种数据获取方法、装置、设备及存储介质 |
CN111782541A (zh) * | 2020-07-10 | 2020-10-16 | 泰康保险集团股份有限公司 | 测试用例生成方法、装置、设备及计算机可读存储介质 |
CN111881022A (zh) * | 2020-07-07 | 2020-11-03 | 上海中通吉网络技术有限公司 | 基于测试场景生成测试用例的方法、装置和设备 |
-
2020
- 2020-11-24 CN CN202011326556.1A patent/CN112346983B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521122A (zh) * | 2011-11-23 | 2012-06-27 | 北京交通大学 | 面向动态场景的测试序列生成方法及系统 |
CN103049382A (zh) * | 2012-12-27 | 2013-04-17 | 中国建设银行股份有限公司 | 用于软件模块测试的测试案例生成方法及装置 |
US20170132117A1 (en) * | 2015-11-06 | 2017-05-11 | Ford Global Technologies, Llc | Method and device for generating test cases for autonomous vehicles |
US20170161180A1 (en) * | 2015-12-03 | 2017-06-08 | Wipro Limited | System and Method for Optimizing Test Suite Comprising Plurality of Test Cases |
CN105955890A (zh) * | 2016-05-13 | 2016-09-21 | 中国建设银行股份有限公司 | 一种功能测试案例的生成方法及装置 |
CN106845781A (zh) * | 2016-12-22 | 2017-06-13 | 中信银行股份有限公司 | 用于业务测试的场景及流程的生成系统和方法 |
US20200117583A1 (en) * | 2018-10-16 | 2020-04-16 | Dell Products L. P. | Automated testcase build engine and prediction-based test system |
CN110865941A (zh) * | 2019-11-11 | 2020-03-06 | 中信百信银行股份有限公司 | 接口测试用例生成方法、装置和系统 |
CN111427784A (zh) * | 2020-03-24 | 2020-07-17 | 中国建设银行股份有限公司 | 一种数据获取方法、装置、设备及存储介质 |
CN111881022A (zh) * | 2020-07-07 | 2020-11-03 | 上海中通吉网络技术有限公司 | 基于测试场景生成测试用例的方法、装置和设备 |
CN111782541A (zh) * | 2020-07-10 | 2020-10-16 | 泰康保险集团股份有限公司 | 测试用例生成方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112346983B (zh) | 2024-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11501087B2 (en) | Populating an expert-system knowledgebase based on correspondences between knowledgebase axioms and business processes | |
Li et al. | Making {Geo-Replicated} systems fast as possible, consistent when necessary | |
CN110597730B (zh) | 基于场景法的自动化测试用例生成方法及系统 | |
CN109816503A (zh) | 财务明细数据生成方法、装置、计算机设备和存储介质 | |
CN109376093B (zh) | 保险产品的测试方法及装置、存储介质及电子设备 | |
CN108876619A (zh) | 基于区块链智能合约的处理方法、装置、设备和介质 | |
CN112433944A (zh) | 业务测试方法、装置、计算机设备和存储介质 | |
CN108460068A (zh) | 报表导入导出的方法、装置、存储介质及终端 | |
CN113609011A (zh) | 一种保险产品工厂的测试方法、装置、介质和设备 | |
Atkinson et al. | Specifying high-assurance services | |
CN112346983A (zh) | 一种测试案例自动化生成的方法和系统 | |
CN116974537A (zh) | 基于组件的产品开发方法、装置、计算机设备及存储介质 | |
CN109410077B (zh) | 定义规则流的方法及装置、计算机存储介质、电子设备 | |
CN100458800C (zh) | 电子电路设计的自动构建系统及自动构建方法 | |
US11449415B2 (en) | Self-service integration and feature testing | |
CN106066820B (zh) | 验证挂载恢复卷的自动化测试方法及系统 | |
CN115268847A (zh) | 区块链智能合约的生成方法、装置及电子设备 | |
CN110399296A (zh) | 测试客户端与服务端之间交互接口的方法、系统和介质 | |
CN109840213A (zh) | 一种gui测试的测试数据创建方法、装置、终端及存储介质 | |
CN111865726A (zh) | 业务消息测试方法、装置、计算机系统和存储介质 | |
CN111930559A (zh) | 灾备切换方法、系统、装置和存储介质 | |
CN109374038A (zh) | 一种基于应用样机的核安全级仪控产品的变更测试方法 | |
CN110162460A (zh) | 应用程序异常问题定位方法、装置、计算机设备及存储介质 | |
Husen et al. | Improving GQM+ Strategies with Balanced Scorecard's Perspectives: A Feasibility Study | |
Wagner et al. | Choreography-based Consolidation of Multi-instance BPEL Processes. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |