CN108089980A - 一种基于形式化语言Event-B的需求检索库的软件测试方法 - Google Patents
一种基于形式化语言Event-B的需求检索库的软件测试方法 Download PDFInfo
- Publication number
- CN108089980A CN108089980A CN201711256578.3A CN201711256578A CN108089980A CN 108089980 A CN108089980 A CN 108089980A CN 201711256578 A CN201711256578 A CN 201711256578A CN 108089980 A CN108089980 A CN 108089980A
- Authority
- CN
- China
- Prior art keywords
- demand
- event
- software
- test
- test case
- 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
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
-
- 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/3688—Test management for test execution, e.g. scheduling of test suites
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)
- Stored Programmes (AREA)
Abstract
本发明涉及软件测试技术领域,特别涉及一种基于形式化语言Event‑B的需求检索库的软件测试方法,包括如下步骤:将软件开发需求分解成原子需求;使用Event‑B语言建立了一套标准的用于描述原子需求的句式;当获取到新的软件测试需求时,将新的需求改写成抽象机和上下文的范式,在需求关系库中进行搜索;梳理测试用例,建立测试用例与需求多对一的需求关系库。本发明的基于形式化语言Event‑B的需求检索库的软件测试方法,将软件开发需求分解成原子需求,直接使用在需求关系库中搜索到的需求的测试用例,从而达成测试用例的复用;减轻了测试工作的强度;使得随着测试工作的开展,不仅测试人员的测试能力得到了提高,测试经验也得到了积累。
Description
技术领域
本发明涉及软件测试技术领域,特别涉及一种基于形式化语言Event-B的需求检索库的软件测试方法。
背景技术
标准的软件测试流程是软件测试人员拿到软件的开发需求后将需求分解,再逐次依据软件需求编写测试用例,展开软件测试工作。目前国内的软件测试人员都是遵循着这样的测试流程执行测试工作。
在软件测试环节中测试用例的编写占据了测试工作量中的很大部分,而历经多个项目后,软件测试人员的测试能力得到提高,但测试用例并没有积累下来,这是由于不同的测试人员编写的测试用例不能通用,且不同软件项目需求差别也很大,导致一个项目的测试用例很难在其他的软件测试项目中得到复用。
发明内容
本发明的目的是提供了一种基于形式化语言Event-B的需求检索库的软件测试方法,已解决现有技术中存在的至少一个问题。
本发明的技术方案是:
一种基于形式化语言Event-B的需求检索库的软件测试方法,包括如下步骤:
步骤一、将软件开发需求分解成原子需求;
步骤二、使用Event-B语言建立了一套标准的用于描述原子需求的句式;
步骤三、当获取到新的软件测试需求时,将新的需求改写成抽象机和上下文的范式,在需求关系库中进行搜索;
步骤四、梳理测试用例,建立测试用例与需求多对一的需求关系库。
可选的,在所述步骤二中,首先构造出与系统需求规范等价的抽象机和上下文,再将抽象机和上下文作为索引存储在需求关系库中。
可选的,在所述步骤二中,所述抽象机包括了变量、不变式、事件,其中,所述变量、不变式用于刻画系统的状态,所述事件由卫式条件和动作基本构件组成,用于刻画系统的状态迁移;
所述上下文包含集合常数、常数、定理、公理。
可选的,在所述步骤四中,当测试目标软件的功能相近且平台类似时,直接从需求关系库中调取相同的需求条目,复用其测试用例即可;
当本条需求在需求关系库中无法搜索到时,编写相应的测试用例,并将此条需求关系添加至需求关系库中。
发明效果:
本发明的基于形式化语言Event-B的需求检索库的软件测试方法,将软件开发需求分解成原子需求,直接使用在需求关系库中搜索到的需求的测试用例,从而达成测试用例的复用;减轻了测试工作的强度;使得随着测试工作的开展,不仅测试人员的测试能力得到了提高,测试经验也得到了积累;随着项目的积累,需求关系库会得到充实和完整,能够减轻相应的软件测试工作。
附图说明
图1是本发明基于形式化语言Event-B的需求检索库的软件测试方法的原理图。
具体实施方式
为使本发明实施的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施例是本发明一部分实施例,而不是全部的实施例。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面结合附图对本发明的实施例进行详细说明。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明保护范围的限制。
下面结合附图1对本发明基于形式化语言Event-B的需求检索库的软件测试方法做进一步详细说明。
本发明提供了一种基于形式化语言Event-B的需求检索库的软件测试方法,包括如下步骤:
步骤一、将软件开发需求分解成原子需求。
步骤二、使用Event-B语言建立了一套标准的用于描述原子需求的句式。
具体地,是首先构造出与系统需求规范等价的抽象机和上下文,将抽象机和上下文作为索引存储在需求关系库中。
进一步,本实施例中,优选抽象机包括了变量、不变式、事件等基本构件,其中变量、不变式刻画系统的状态,事件由卫式条件和动作基本构件组成,刻画系统的状态迁移。
本实施例中,优选上下文包含集合常数、常数、定理、公理基本构件。
步骤三、当获取到新的软件测试需求时,将新的需求改写成抽象机和上下文的范式,在需求关系库中进行搜索。
步骤四、梳理测试用例,建立测试用例与需求多对一的需求关系库。
具体地,当测试目标软件的功能相近,平台类似时,直接从需求关系库中调取相同的需求条目,复用其测试用例即可。
当本条需求在需求关系库中无法搜索到时,编写相应的测试用例,并将此条需求关系添加至需求关系库中。随着项目的积累,测试用例的复用程度会越来越高。
下面以测试对VHF超短波电台减小音量的操作为例:
使用上下文来描述超短波电台的状态,处于工作状态还是关闭状态—work_status:ON/OFF,当前电台频率:30~300Mhz—frequency:30~300Mhz,当前音量:0~99—volume:0~99等。
使用抽象机来描述操作:按压超短波电台或多功能显示器的周边键使得超短波电台的音量减少。
可以得到下文:
Machine VH
work_status=ON
volume=0
OPERATION
volume.operation()=…;
本发明的基于形式化语言Event-B的需求检索库的软件测试方法,使用形式化语言Event-B准确的描述原子需求,建立原子需求与测试用例的关系库;将软件开发需求分解成原子需求,直接使用在需求关系库中搜索到的需求的测试用例,从而达成测试用例的复用;减轻了测试工作的强度;使得随着测试工作的开展,不仅测试人员的测试能力得到了提高,测试经验也得到了积累;随着项目的积累,需求关系库会得到充实和完整,能够减轻相应的软件测试工作。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (4)
1.一种基于形式化语言Event-B的需求检索库的软件测试方法,其特征在于,包括如下步骤:
步骤一、将软件开发需求分解成原子需求;
步骤二、使用Event-B语言建立了一套标准的用于描述原子需求的句式;
步骤三、当获取到新的软件测试需求时,将新的需求改写成抽象机和上下文的范式,在需求关系库中进行搜索;
步骤四、梳理测试用例,建立测试用例与需求多对一的需求关系库。
2.根据权利要求1所述的基于形式化语言Event-B的需求检索库的软件测试方法,其特征在于,在所述步骤二中,首先构造出与系统需求规范等价的抽象机和上下文,再将抽象机和上下文作为索引存储在需求关系库中。
3.根据权利要求2所述的基于形式化语言Event-B的需求检索库的软件测试方法,其特征在于,在所述步骤二中,所述抽象机包括了变量、不变式、事件,其中,所述变量、不变式用于刻画系统的状态,所述事件由卫式条件和动作基本构件组成,用于刻画系统的状态迁移;
所述上下文包含集合常数、常数、定理、公理。
4.根据权利要求1所述的基于形式化语言Event-B的需求检索库的软件测试方法,其特征在于,在所述步骤四中,当测试目标软件的功能相近且平台类似时,直接从需求关系库中调取相同的需求条目,复用其测试用例即可;
当本条需求在需求关系库中无法搜索到时,编写相应的测试用例,并将此条需求关系添加至需求关系库中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711256578.3A CN108089980B (zh) | 2017-12-03 | 2017-12-03 | 一种基于形式化语言Event-B的需求检索库的软件测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711256578.3A CN108089980B (zh) | 2017-12-03 | 2017-12-03 | 一种基于形式化语言Event-B的需求检索库的软件测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108089980A true CN108089980A (zh) | 2018-05-29 |
CN108089980B CN108089980B (zh) | 2021-07-23 |
Family
ID=62172550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711256578.3A Active CN108089980B (zh) | 2017-12-03 | 2017-12-03 | 一种基于形式化语言Event-B的需求检索库的软件测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108089980B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395188A (zh) * | 2020-11-06 | 2021-02-23 | 武汉木仓科技股份有限公司 | 一种面向测试的软件项目开发方法、装置、电子设备及存储介质 |
CN112783758A (zh) * | 2019-11-11 | 2021-05-11 | 阿里巴巴集团控股有限公司 | 测试案例库与特征库生成方法、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6415396B1 (en) * | 1999-03-26 | 2002-07-02 | Lucent Technologies Inc. | Automatic generation and maintenance of regression test cases from requirements |
CN101645036A (zh) * | 2009-09-11 | 2010-02-10 | 兰雨晴 | 基于测试执行机能力度的测试任务自动分配方法 |
CN105302718A (zh) * | 2015-10-26 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | 一种面向复用软件的测试模型的设计方法 |
-
2017
- 2017-12-03 CN CN201711256578.3A patent/CN108089980B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6415396B1 (en) * | 1999-03-26 | 2002-07-02 | Lucent Technologies Inc. | Automatic generation and maintenance of regression test cases from requirements |
CN101645036A (zh) * | 2009-09-11 | 2010-02-10 | 兰雨晴 | 基于测试执行机能力度的测试任务自动分配方法 |
CN105302718A (zh) * | 2015-10-26 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | 一种面向复用软件的测试模型的设计方法 |
Non-Patent Citations (1)
Title |
---|
周育逵等: ""基于event-b的中断管理需求和涉及形式化建模与验证方法"", 《空间控制技术与应用》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112783758A (zh) * | 2019-11-11 | 2021-05-11 | 阿里巴巴集团控股有限公司 | 测试案例库与特征库生成方法、设备及存储介质 |
CN112783758B (zh) * | 2019-11-11 | 2024-02-27 | 阿里云计算有限公司 | 测试案例库与特征库生成方法、设备及存储介质 |
CN112395188A (zh) * | 2020-11-06 | 2021-02-23 | 武汉木仓科技股份有限公司 | 一种面向测试的软件项目开发方法、装置、电子设备及存储介质 |
CN112395188B (zh) * | 2020-11-06 | 2022-12-27 | 武汉木仓科技股份有限公司 | 一种面向测试的软件项目开发方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108089980B (zh) | 2021-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mahmoud et al. | The current state of the art in research on predictive maintenance in smart grid distribution network: Fault’s types, causes, and prediction methods—A systematic review | |
CN108089980A (zh) | 一种基于形式化语言Event-B的需求检索库的软件测试方法 | |
CN103926512A (zh) | 模拟交联聚乙烯绝缘电缆局部放电的方法和模拟检测平台 | |
CN102929981B (zh) | 多媒体扫描文件索引方法及装置 | |
CN103207906B (zh) | 搜索结果的提供方法和搜索引擎 | |
CN204291015U (zh) | 一种通信产品的测试系统 | |
CN105403764A (zh) | 移动终端的功耗测试系统及方法 | |
CN106020916A (zh) | 一种更新应用程序的方法、终端设备及服务器 | |
CN105243820A (zh) | 智能便携环境检测终端及环境检测系统 | |
CN105322591A (zh) | 一种显示电子设备充电时间的方法、装置及电子设备 | |
CN111259835A (zh) | 一种基于卫星技术的输电线路区域内树木生长趋势预测方法 | |
CN102723675B (zh) | 仪表箱配线工装 | |
CN104215279A (zh) | 一种环境在线监测系统及环境监测方法 | |
CN105068781A (zh) | 拼接显示装置开窗方法和系统 | |
CN106707189B (zh) | 液流电池系统荷电状态的检测方法及装置 | |
CN103443721B (zh) | Plc设计装置 | |
CN106227692A (zh) | 一种计算器的实现方法及终端 | |
KR101841237B1 (ko) | 전기자동차용 배터리의 충전상태 모니터링방법 | |
CN110120880B (zh) | 组件更新方法及系统 | |
CN108920879A (zh) | 移频建模仿真方法及装置 | |
RU156544U1 (ru) | Устройство определения повреждённого фидера | |
WO2023278611A1 (en) | Systems and methods for automated electrical panel analysis | |
CN111521877B (zh) | 一种暂态电磁环境分布式无线测量系统及方法 | |
CN108802512B (zh) | 一种配电系统测试方法及装置 | |
CN205544611U (zh) | 一种电力配网抢修自动保护装置 |
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 |