CN106201538B - 一种基于rucm的实时性测试方法 - Google Patents
一种基于rucm的实时性测试方法 Download PDFInfo
- Publication number
- CN106201538B CN106201538B CN201610565942.3A CN201610565942A CN106201538B CN 106201538 B CN106201538 B CN 106201538B CN 201610565942 A CN201610565942 A CN 201610565942A CN 106201538 B CN106201538 B CN 106201538B
- Authority
- CN
- China
- Prior art keywords
- real
- time data
- test
- time
- browsing
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种基于RUCM的实时性测试方法,所述方法包括以下步骤:对RTCM测试模板进行实时性测试扩展,得到实时性测试规格模板;结合系统当前的状态对需求的识别和分配进行扩展,实现单独的view;对用户实时性需求进行规范化描述,得到实时性需求规格;进行从实时性需求规格到实时性测试规格的转换;基于实时性测试规格,生成实时性的抽象测试用例。所述方法解决了现有基于需求的测试方法信息不完备、不易理解和使用以及没有针对实时性测试等缺陷;同时可以有效节省人力,降低成本,提高测试用例规格的准确性和完整性。
Description
技术领域
本发明涉及测试技术领域,尤其涉及一种基于RUCM的实时性测试方法。
背景技术
需求阶段通过需求文档,主要是需求规格说明书,完成对需求的捕捉和描述,之后根据需求规格说明书对需求进行建模。基于需求的测试主要包括两种,一是基于需求规格说明书的测试;二是基于需求模型,主要是针对UML用例图的测试模型的测试。其中,
对于基于需求规格说明书的测试,规格说明书是需求捕获阶段广泛使用的技术,规格说明书中使用自然语言对需求进行描述,其优点是易于理解和使用,然而由于自然语言具有不一致性和二义性,这为后续的建模工作以及测试工作带来了巨大的困难。因此目前基于需求规格说明书的测试主要采用形式化规范的测试规格模板,以此作为后续建模和测试的输入。
对于基于需求模型的测试,这是另一种广泛使用的基于需求的测试方法,在众多需求模型中使用比较多的是UML的用例图模型。
目前,基于需求的测试方法主要存在如下缺陷:
第一,用例图模型在基于需求的测试中被大量使用,但是由于用例图模型本身所含有的信息不全面,仅能描述系统级别的测试大纲,缺少充足的信息描述测试中需求的全部信息,要生成完整的测试用例还需要对其进行进一步的扩充。因此,基于用例图的测试用例技术,需要采用两种方法弥补不足:一方面,对符号与注释进行技术扩充以增强用例图的表达能力;另一方面,提供与用例图配套的规格说明,使用自然语言描述测试用例,增强测试阶段的信息获取能力。
第二,在基于形式化规格说明书的测试技术中,现阶段大部分的方法利用已有的形式化技术,比如Z语言,布尔表达式等。但是,使用这些方法给需求规格的编写造成了极大的困难,需要使用者事先接受关于形式化方法的相关培训,对这些方法进行学习,这在工业界并不是一个最优的解决方案。
第三,在基于形式化需求规格说明书的测试方法中,研究相对较少,大部分采用的是基于设计阶段的UML模型的测试方法。
对于实时系统而言,基于模型的测试面临的主要问题是:时间维的引入大大增加了模型的复杂性与测试的复杂性。评价测试方法好坏的主要指标是:测试集大小和故障检测能力。基于模型的实时系统测试需要解决如下的问题:用形式模型准确描述待测实时系统,在尽量弱的测试假设下,生成尽量小但是发现错误能力足够强的测试集进行实时性测试。
用于软件系统规约的形式模型大体分为基于FSM/标记迁移系统(LTS)的模型、基于时序逻辑的模型和基于Petri net的模型。但随着面向对象技术应用在嵌入式系统中,UML技术成为嵌入式实时性系统的一种重要的表示方法,其中基于UML的扩展MARTE更是针对嵌入式实时性系统提出的规范。
RT-RUCM实时性需求建模方法是对通用的RUCM需求建模方法针对软件实时性要求进行的扩展。
RUCM需求建模方法是一种受约束的用例建模方法,根据目前用例建模的研究成果,同时结合相关的实践经验,提出了一个改良的用例规约模板,同时提出了一组限制规则用以约束自然语言的使用,并且强制要求使用关键字来描述流程。RUCM用例模板和很多其它用例模板相似,拥有基本的用例名、用例简述、前置条件、活动者、依赖关系和泛化关系等字段。RUCM模板中包含基本流和三种分支流:特定分支流、全局分支流和有界分支流。基本流描述了用例成功执行情况下的步骤以及用例执行之后的后置条件。每个用例都必须有一个基本流来描述其基本的行为。分支流描述了除基本流之外的其它场景和分支情况。
RT-RUCM实时性需求建模方法对通用的RUCM需求建模方法进行了扩展,针对软件实时性的需求,对活动者的分类、用例的分类、资源的分类、实时性约束以及实时性语句进行了扩充。RT-RUCM将活动者分类为四种主要类型:Timer,HumanActor,ExternalInstrument和ExternalSystem。Timer描述了实时嵌入式系统中常见的定时器概念,HumanActor描述由实际人员充当的活动者,ExternalInstrument描述系统的外部器件,ExternalSystem描述外部系统。在用例上,RT-RUCM引入了RealTimeUC来明确表达一个用例是针对实时嵌入式系统建模的,同时定义了PeriodicalUC,PeriodicalUC是一类特殊的RealTimeUC,用来描述周期性执行的用例。
RTCM(Restricted Test Case Modeling)测试建模方法是基于RUCM需求建模方法提出的一种面向功能性的软件黑盒测试方法,该方法汲取了RUCM降低自然语言二义性的优势。RTCM是对RUCM针对软件测试进行的扩展,复用了RUCM提出的限制规则,同时针对软件测试的特性进行了进一步的扩展。RTCM的主体技术框架包括测试规格模板、关键字和约束规则。测试用例规格模板是RTCM方法的核心,用以描述所有测试需要描述的要素;关键字用以约束用户在书写测试规格说明的时候准确描述测试动作;约束规则规范了用户书写测试规格说明的方式,降低二义性。
目前基于需求的测试大多数是基于需求模型的测试,存在着信息不完备、不易理解和使用等缺陷,而且基本上是针对普通功能性需求,针对实时性测试的技术方案比较少。目前已有的技术方案中,并没有定义良好的针对实时性的测试规格描述模板。
发明内容
本发明公开了一种基于RUCM的实时性测试方法,用于解决现有基于需求的测试方法着信息不完备、不易理解和使用及没有针对实时性测试等缺陷。
本发明的目的主要是通过以下技术方案实现的:
一种基于RUCM的实时性测试方法,其特征在于,包括以下步骤:
步骤S1、对RTCM测试模板进行实时性测试扩展,得到实时性测试规格模板;
步骤S2、结合系统当前的状态对需求的识别和分配进行扩展,实现单独的view;
步骤S3、接收用户输入的实时性需求;
步骤S4、根据步骤S1中所述实时性测试规格模板及步骤S2中所述view对实时性需求进行规范化描述,得到实时性需求规格;
步骤S5、基于RUCM4Real和RTCM4Real,进行从实时性需求规格到实时性测试规格的转换;
步骤S6、将实时性测试规格自动转换为测试用例,对测试用例进行测试,输出测试结果;基于实时性测试规格,生成实时性的抽象测试用例。
所述实时性测试扩展包括:
对自然语言表达的扩展和对TCMeta的扩展。
所述对自然语言表达的扩展包括:
针对描述项的扩展和针对约束规则的扩展。
所述对TCMeta的扩展包括:增加实时性相关的元类,使TCMeta元模型可以描述实时性语句。
步骤S3中所述实时性需求包括:
需求文档或者其他形式的需求描述。
所述步骤S5进一步包括:
借助步骤S1中扩展的TCMeta元模型作为中间形式,将自然语言描述形式化,再从需求元模型转换为测试元模型,以此实现模型间的转换。
所述步骤S6进一步包括:
根据路径遍历算法,从测试规格中生成抽象的测试用例。
本发明有益效果如下:
该实现方案实现了从实时性需求规格到实时性测试规格的自动转换,可以有效节省人力,降低成本,提高测试用例规格的准确性和完整性。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分的从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
图1为本发明具体实施例的方法流程图。
具体实施方式
下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例起用于阐释本发明的原理。
本发明公开了一种基于RUCM的实时性测试方法,用于解决现有基于需求的测试方法着信息不完备、不易理解和使用及没有针对实时性测试等缺陷。
本发明的整体框架,主要包含针对于需求的RUCM和针对于测试的RTCM,它们的底层实现机制均为LMF,LMF是一个轻量级的建模框架,主要用来构建模型,它与EMF功能十分相似,但是由于LMF主要保留了模型相关的功能,因此较之EMF更轻便,复杂性更低。UCMeta元模型是自然语言的形式化表达方式,每一个RUCM的元素均对应于一个相应的模型实例,UCMeta的一个重要作用是辅助转换,由于用例规约是以自然语言的方式描述的,并不易转换为其他模型,以UCMeta作为中间模型,先对自然语言的语法分析结果进行建模,之后利用这种中间模型转换为其他模型。
针对RUCM,实现针对实时性的RUCM4Real(RT-RUCM)需求建模方法,并且实现从RUCM到RTCM的转换。本发明的主要工作包括:第一、基于RTCM建模方法,针对实时性进行扩展;第二、加入系统级别配置方案;第三、基于RUCM4Real和RTCM4Real,进行从实时性需求规格到实时性测试规格的转换;第四、基于实时性测试规格,生成实时性的抽象测试用例。
根据本发明的一个具体实施例,公开了一种基于RUCM的实时性测试方法,所述方法具体包括以下步骤:
步骤S1、对RTCM测试模板进行实时性测试扩展,得到实时性测试规格模板;
具体地,所述实时性测试扩展包括:对自然语言表达的扩展和对TCMeta的扩展;
针对自然语言表达的扩展是为了使得实时性测试规格能够描述实时性测试,同时可以满足实时性测试规范的要求,此部分的扩展主要包含两方面,针对描述项的扩展和针对约束规则的扩展。对描述项的扩展主要是通过增加描述项,以此增加实时性的表达能力;对约束规则的扩展主要是通过添加关键字,以此来描述实时性测试的属性以及加强形式化约束,对实时性描述语句进行限定。
实时性测试规格模板,如表1所示,其扩展内容主要包括:
(1)基本描述:
①Simulators,表示本测试用例规约涉及到的模拟器;
②Period,当本测试规格用例具有周期特性,编辑此区域,否则为NONE;
(2)约束规则:
①TSTimer,此部分用来定义测试系统的定时器,使用RFS定义开始动作的时刻与结束动作的时刻,这里要求开始动作与结束动作在同一个flow中。
②时间约束:描述与时间相关的约束规则,可是使用RFS关键字指向某一测试语句,Constraint Expression即表示一般的表达式。
③资源约束:描述与资源相关的约束规则,可是使用RFS关键字指向某一测试语句,Constraint Expression即表示一般的表达式。
表1实时性测试规格模板
针对TCMeta的扩展,包括增加实时性相关的元类,使得元模型可以描述实时性语句,利用TCMeta元模型可以将测试规格中的元素(比如词语、句子)形式化、模型,便于后续的模型转换。
步骤S2、结合系统当前的状态对需求的识别和分配进行扩展,实现单独的view;如下表2所示,主要包含四个域:
(1)名字:此配置的名称,具有唯一性
(2)Type:资源种类
(3)Value:资源的值
(4)RFS:对应的测试规格步骤
Name | Type | Value | RFS |
CPU配置 | CPU Load | 20% | Step1 |
表2
步骤S3、接收用户输入的实时性需求;
所述实时性需求可以是需求文档或者其他形式的需求描述。
步骤S4、根据步骤S1中所述实时性测试规格模板及步骤S2中所述view对实时性需求进行规范化描述,得到实时性需求规格;
步骤S5、基于RUCM4Real和RTCM4Real,进行从实时性需求规格到实时性测试规格的转换;
其中,RUCM4Real和RTCM4Real分别是实时性需求规格和实时性测试规格,分别用来描述实时性需求和实时性测试需求,规格的描述均采用的自然语言。借助步骤S1中扩展的TCMeta元模型作为中间形式,将自然语言描述(关键词、句子等)形式化,再从需求元模型转换为测试元模型,以此实现模型间的转换。
步骤S6、将测试规格自动转换为测试用例,对测试用例进行测试,输出测试结果;
具体地,根据路径遍历算法,基于实时性测试规格,生成实时性的抽象测试用例;
所述路径遍历算法采用递归的方式实现,基于条件语句的真与非真情况区别不同的测试场景,生成一条新的测试用例,具体规则:
算法的起点为基本测试序列的第一句;
一个面向场景的测试用例的终点为遇到ABORT语句或者基本测试序列的最后一句;
随机选择一条语句,执行一次全局测试序列;
当前语句如果被断言验证测试流引用,则以0与1次执断言验证测试流;
当前语句为条件语句时,如果为ConditionCheck语句,置真为非真各代表一个测试场景,如果为Conditional语句,每一条分支各代表一个测试场景;本条规则的设计是为了支持算法的可扩展。
本发明技术方案带来的有益效果如下:
1.通过用以描述实时性测试规格的模板,一方面易于使用易于理解,另一方面由于限制规则的约束可以有效降低规格描述的二义性。
2.实现了从实时性需求规格到实时性测试规格的自动转换,一方面节省人力,降低成本;另一方面保证了测试规格的完整性和正确性。
3.实现了从测试规格到测试用例的自动转换,可以进一步指导测试人员进行测试。
本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (5)
1.一种基于RUCM的实时性测试方法,其特征在于,包括以下步骤:
步骤S1、对RTCM测试模板进行实时性测试扩展,得到实时性测试规格模板;
所述实时性测试扩展包括:对自然语言表达的扩展和对TCMeta的扩展;
所述实时性测试规格模板的扩展内容包括:Simulators和Period的基本描述以及包含TSTimer、时间约束、资源约束在内的约束规则;
步骤S2、结合系统当前的状态对需求的识别和分配进行扩展,实现单独的view;
步骤S3、接收用户输入的实时性需求;
步骤S4、根据步骤S1中所述实时性测试规格模板及步骤S2中所述view对实时性需求进行规范化描述,得到实时性需求规格;
步骤S5、基于RUCM4Real和RTCM4Real,进行从实时性需求规格到实时性测试规格的转换;
步骤S6、将测试规格自动转换为测试用例,对测试用例进行测试,输出测试结果;
根据路径遍历算法,从测试规格中生成抽象的测试用例;
所述路径遍历算法采用递归的方式实现,基于条件语句的真与非真情况区别不同的测试场景,生成一条新的测试用例,具体规则:
算法的起点为基本测试序列的第一句;
一个面向场景的测试用例的终点为遇到ABORT语句或者基本测试序列的最后一句;
随机选择一条语句,执行一次全局测试序列;
当前语句为条件语句时,如果为Conditional语句,每一条分支各代表一个测试场景。
2.根据权利要求1所述的基于RUCM的实时性测试方法,其特征在于,所述对自然语言表达的扩展包括:
针对描述项的扩展和针对约束规则的扩展。
3.根据权利要求1所述的基于RUCM的实时性测试方法,其特征在于,所述对TCMeta的扩展包括:增加实时性相关的元类,使TCMeta元模型可以描述实时性语句。
4.根据权利要求1所述的基于RUCM的实时性测试方法,其特征在于,步骤S3中所述实时性需求包括:
需求文档或者其他形式的需求描述。
5.根据权利要求1所述的基于RUCM的实时性测试方法,其特征在于,所述步骤S5进一步包括:
借助步骤S1中扩展的TCMeta元模型作为中间形式,将自然语言描述形式化,再从需求元模型转换为测试元模型,以此实现模型间的转换。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610565942.3A CN106201538B (zh) | 2016-07-18 | 2016-07-18 | 一种基于rucm的实时性测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610565942.3A CN106201538B (zh) | 2016-07-18 | 2016-07-18 | 一种基于rucm的实时性测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106201538A CN106201538A (zh) | 2016-12-07 |
CN106201538B true CN106201538B (zh) | 2019-05-31 |
Family
ID=57493192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610565942.3A Active CN106201538B (zh) | 2016-07-18 | 2016-07-18 | 一种基于rucm的实时性测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106201538B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108388231B (zh) * | 2018-03-09 | 2020-05-01 | 北京航空航天大学 | 一种机载设备测试需求生成方法及机载设备测试方法 |
CN108509197B (zh) * | 2018-03-09 | 2020-08-21 | 北京航空航天大学 | 一种测试需求视图生成方法及ate测试方法 |
CN111651139B (zh) * | 2020-04-23 | 2023-06-20 | 南京航空航天大学 | 一种oml对rucm的表示方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101196817A (zh) * | 2008-01-04 | 2008-06-11 | 福建星网锐捷网络有限公司 | 测试用例生成方法及系统 |
CN102968368A (zh) * | 2012-08-30 | 2013-03-13 | 中国人民解放军63928部队 | 一种遍历场景状态图的嵌入式测试用例设计与生成方法 |
CN104657262A (zh) * | 2015-02-10 | 2015-05-27 | 上海创景计算机系统有限公司 | 高实时自动化测试系统和测试方法 |
CN104965956A (zh) * | 2015-07-16 | 2015-10-07 | 北京航空航天大学 | 一种基于rucm的需求验证方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0410047D0 (en) * | 2004-05-05 | 2004-06-09 | Silverdata Ltd | An analytical software design system |
-
2016
- 2016-07-18 CN CN201610565942.3A patent/CN106201538B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101196817A (zh) * | 2008-01-04 | 2008-06-11 | 福建星网锐捷网络有限公司 | 测试用例生成方法及系统 |
CN102968368A (zh) * | 2012-08-30 | 2013-03-13 | 中国人民解放军63928部队 | 一种遍历场景状态图的嵌入式测试用例设计与生成方法 |
CN104657262A (zh) * | 2015-02-10 | 2015-05-27 | 上海创景计算机系统有限公司 | 高实时自动化测试系统和测试方法 |
CN104965956A (zh) * | 2015-07-16 | 2015-10-07 | 北京航空航天大学 | 一种基于rucm的需求验证方法 |
Non-Patent Citations (1)
Title |
---|
基于RUCM的嵌入式软件的可靠性和实时性需求建模方法;郭鹏等;《全国抗恶劣环境计算机第二十三届学术年会论文集》;20140725;正文 |
Also Published As
Publication number | Publication date |
---|---|
CN106201538A (zh) | 2016-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105701008B (zh) | 用于测试用例生成的系统和方法 | |
US8479159B2 (en) | System and method for automatically determining relationships between software artifacts using multiple evidence sources | |
US8539405B2 (en) | Method and system for implementing top down design and verification of an electronic design | |
US10699046B2 (en) | System and method for achieving functional coverage closure for electronic system verification | |
US8234102B2 (en) | Development of assertions for integrated circuit design simulation | |
US20070061641A1 (en) | Apparatus and method for generating test driver | |
Savage et al. | IP Reuse in the System on a Chip Era | |
US11314225B2 (en) | Systems and methods for evaluating assessments | |
CN106201538B (zh) | 一种基于rucm的实时性测试方法 | |
US8522182B2 (en) | Generation of an end point report for a timing simulation of an integrated circuit | |
US9524366B1 (en) | Annotations to identify objects in design generated by high level synthesis (HLS) | |
CN112444731B (zh) | 芯片测试方法、装置、处理器芯片及服务器 | |
JP2010003008A (ja) | 検出プログラム、検出装置および検出方法 | |
CN114662427A (zh) | 一种逻辑系统设计的调试方法及设备 | |
CN116341428A (zh) | 构建参考模型的方法、芯片验证方法及系统 | |
US20120166168A1 (en) | Methods and systems for fault-tolerant power analysis | |
US8015523B2 (en) | Method and system for sequential netlist reduction through trace-containment | |
US11227090B2 (en) | System and method for achieving functional coverage closure for electronic system verification | |
US20180225399A1 (en) | Automatic timing-sensitive circuit extraction | |
Nikiforova et al. | Towards a Business Process Model-based Testing of Information Systems Functionality. | |
Weiß et al. | Towards establishing formal verification and inductive code synthesis in the PLC domain | |
Sypsas et al. | Computing Similarities Between Virtual Laboratory Experiments Models Using Petri Nets | |
Mehlhase | A python package for simulating variable-structure models with dymola | |
Vanderperren et al. | A systemc based system on chip modelling and design methodology | |
Mishra et al. | Introduction to behavior-driven development |
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 | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20161207 Assignee: Zhengzhou Yunhai Technology Co.,Ltd. Assignor: BEIHANG University Contract record no.: X2021990000107 Denomination of invention: A real time testing method based on rucm Granted publication date: 20190531 License type: Common License Record date: 20210218 |