CN110442522A - 基于电动汽车的功能需求的测试用例生成方法和测试方法 - Google Patents
基于电动汽车的功能需求的测试用例生成方法和测试方法 Download PDFInfo
- Publication number
- CN110442522A CN110442522A CN201910718556.7A CN201910718556A CN110442522A CN 110442522 A CN110442522 A CN 110442522A CN 201910718556 A CN201910718556 A CN 201910718556A CN 110442522 A CN110442522 A CN 110442522A
- Authority
- CN
- China
- Prior art keywords
- test
- test case
- hil
- mil
- 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.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 736
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000010998 test method Methods 0.000 title claims abstract description 10
- 238000012093 association test Methods 0.000 claims abstract description 49
- 238000012956 testing procedure Methods 0.000 claims abstract description 17
- 238000005516 engineering process Methods 0.000 claims description 48
- 238000011990 functional testing Methods 0.000 claims description 32
- 230000003466 anti-cipated effect Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 abstract description 9
- 238000013522 software testing Methods 0.000 abstract description 4
- 238000012795 verification Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 11
- 238000002474 experimental method Methods 0.000 description 9
- 238000010606 normalization Methods 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 238000010276 construction Methods 0.000 description 5
- 239000012141 concentrate Substances 0.000 description 4
- 230000005611 electricity Effects 0.000 description 4
- 230000006698 induction Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000001755 vocal effect Effects 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000003733 optic disk Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/3676—Test management for coverage analysis
-
- 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)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明涉及一种基于电动汽车的功能需求的测试用例生成方法和测试方法。所述测试用例生成方法包括:根据测试用例集中的一个或多个测试用例,生成MIL测试用例,识别MIL测试用例中的测试步骤信息,以从所述MIL测试用例中获取关联测试用例,根据获取的关联测试用例,生成HIL测试用例。对于构建的测试用例,使用同一套测试用例可应用于MIL和HIL两个功能验证的测试环节中,减少测试用例的编写工作量,实现了测试用例的高效利用,提高了整体软件测试效率。
Description
技术领域
本发明属于电动汽车软件测试技术领域,具体涉及一种基于电动汽车的功能需求的测试用例生成方法、生成装置和测试方法。
背景技术
测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。测试用例是将软件测试的行为活动做一科学化的组织归纳,目的是能够将软件测试的行为转化成可管理的模式;同时测试用例也是将测试具体量化的方法之一,不同类别的软件,测试用例是不同的。因此,测试用例的正确性、高效性和覆盖充分性直接反映了测试用例的质量。
在电动汽车控制器的设计开发过程中,模型在环测试(MIL)及硬件在环测试(HIL)是软件开发测试阶段的重要环节,两种测试均需基于软件设计的功能需求,使用测试用例对软件的功能特性进行验证。
现有技术中,对模型在环测试及硬件在环测试的测试用例的测试都是独立进行的,需要专业技术人员在理解软件功能需求的基础上分别进行模型在环测试用例及硬件在环测试用例的设计,随后应用对应的测试工具执行测试用例,并生成测试报告。由于缺少规范化的测试用例生成环节和测试用例生成方法,导致测试用例编写工作量大,对测试人员专业性的高度依赖,可能导致测试用例缺乏可靠性和完整性,无法充分覆盖所提出的软件功能需求,特别是,无法将同一测试用例应用于模型在环测试及硬件在环测试的测试中。
发明内容
为了解决上述测试用例生成不规范的技术问题,本发明提出了一种基于电动汽车的功能需求的测试用例生成方法、生成装置和测试方法。
所述基于电动汽车的功能需求的测试用例生成方法包括如下步骤:
根据测试用例集中的一个或多个测试用例,生成MIL测试用例;
识别MIL测试用例中的测试步骤信息,以从所述MIL测试用例中获取关联测试用例;
根据获取的关联测试用例,生成HIL测试用例。
进一步,利用MIL测试工具生成MIL测试用例,所生成的MIL测试用例包括有执行步骤和判断步骤。
进一步,利用HIL测试工具中生成HIL测试用例,将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例包括有执行步骤和判断步骤。
进一步,利用HIL测试工具中生成HIL测试用例,将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例包括有执行步骤。
进一步,所述测试用例集的生成方法包括如下步骤:
获取与电动汽车的功能需求相关的测试项目;
针对获取的与电动汽车的功能需求相关的测试项目,确定所述与电动汽车的功能需求相关的测试项目的测试条件以及测试条件之间的逻辑关系,构成功能测试集;
根据所述功能测试集,构建测试用例的真值表;
根据所构建的测试用例的真值表,构建测试用例集。
本发明实施例提出的基于电动汽车的功能需求的测试用例的测试方法用于对测试用例进行模型在环测试和硬件在环测试,使用如上所述的测试用例生成方法得到的MIL测试用例和HIL测试用例,
利用MIL测试工具对MIL测试用例进行模型在环测试,将MIL测试用例的实际输出数据与预期输出数据进行对比,检验是否通过测试;
利用HIL测试工具对HIL测试用例进行硬件在环测试,得到HIL测试用例的实际输出数据,利用MIL测试工具将HIL测试用例的实际输出数据与预期输出数据进行对比,检验是否通过测试。
本发明实施例提出的基于电动汽车的功能需求的测试用例生成装置包括MIL测试用例生成部件、关联测试用例获取部件和HIL测试用例生成部件,
所述MIL测试用例生成部件根据测试用例集中的一个或多个测试用例,生成MIL测试用例;
所述关联测试用例获取部件识别MIL测试用例中的测试步骤信息,以从所述MIL测试用例中获取关联测试用例;
所述HIL测试用例生成部件根据获取的关联测试用例,生成HIL测试用例。
进一步,所述MIL测试用例生成部件利用MIL测试工具生成MIL测试用例,所生成的MIL测试用例包括有执行步骤和判断步骤。
进一步,所述HIL测试用例生成部件利用HIL测试工具中生成HIL测试用例,所述HIL测试用例生成部件将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例包括有执行步骤和判断步骤。
进一步,所述HIL测试用例生成部件利用HIL测试工具中生成HIL测试用例,所述HIL测试用例生成部件将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例包括有执行步骤。
本发明的有益效果:本发明实施例提出的基于电动汽车的功能需求的测试用例生成方法和测试方法在软件测试工作中充分利用所生成的测试用例,使同一个测试用例可应用于模型在环测试及硬件在环测试两个测试中。对于构建的测试用例集,利用模型在环测试工具制作测试用例,并进行模型在环测试;利用脚本工具将模型在环测试的测试用例转化为可识别的硬件在环测试用例脚本,从而能够直接应用于硬件在环测试中,使同一套测试用例可应用于两个功能验证的测试环节中,减少测试用例的编写工作量,实现了测试用例的高效利用,提高了整体软件测试效率。
附图说明
图1是本发明实施例提出的基于电动汽车的功能需求的测试用例生成方法的流程图;
图2是本发明优选实施例提出的测试用例集的生成方法的流程图;
图3是本发明实施例提出的基于电动汽车的功能需求的测试用例生成方法的方框图;
图4是本发明优选实施例提出的测试用例集的生成方法的方框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。但本领域技术人员知晓,本发明并不局限于附图和以下实施例。
根据本发明的一个方面,本发明实施例提出了一种基于电动汽车的功能需求的测试用例生成方法,如图1所示,包括如下步骤:
MIL测试用例生成步骤S10:根据测试用例集中的一个或多个测试用例,生成MIL测试用例。
根据测试用例集中的一个或多个测试用例,利用MIL测试工具,如TPT等工具,编写MIL测试用例,所编写的MIL测试用例对应于测试用例集中测试用例,并且可以根据所述测试用例集中的一个或多个测试用例生成对应的一个或多个MIL测试用例。
这样,利用MIL测试工具实现了测试用例的文字描述到MIL测试工具可识别的基于信号的MIL测试用例的转换。利用MIL测试工具能够方便的实现基于信号的测试用例生成,生成的测试用例可读性强,且灵活度高。
利用MIL测试工具生成的MIL测试用例,所生成的MIL测试用例包括有执行步骤和判断步骤,可直接在该MIL测试工具中进行模型在环测试。通过运行MIL测试用例的执行步骤,MIL测试工具能够得到MIL测试用例的实际输出数据;通过运行MIL测试用例的判断步骤,MIL测试工具将MIL测试用例的实际输出数据与预期输出数据进行对比,从而检验是否通过测试,检验结束后MIL测试工具可自动生成基于MIL测试用例的测试报告。
所述测试用例集中每个测试用例都具有唯一的测试用例编号,因此,利用MIL测试工具编写MIL测试用例时,MIL测试用例编号应与测试用例集中的对应测试用例编号一致,确保功能测试的可追溯性。
在本发明的优选实施例中,所述测试用例集优选的通过以下方法生成,如图2所示,包括如下步骤:
测试项目获取步骤S11:获取与电动汽车的功能需求相关的测试项目。
所述与电动汽车的功能需求相关的测试项目可以包括与电动汽车的功能需求相关的规范性测试项目、与软件的问题相关的测试项目及与电动汽车的功能需求相关的其他测试项目。
其中,与电动汽车的功能需求相关的规范性测试项目是以用户对电动汽车的需求为出发点编制的功能性测试项目,是生成测试用例的重要依据,测试用例覆盖度取决于对与电动汽车的功能需求相关的规范性测试项目中的测试条件的提取能力。例如,在电动汽车的测试中,与电动汽车的功能需求相关的规范性测试项目包括电动汽车进入可行使状态、电动汽车进入自动巡航状态、或者电动汽车进入停驶状态等。
与软件的问题相关的测试项目是根据实际测试中出现的与软件相关的问题编制的测试项目,将问题点纳入整车测试用例。例如,在电动汽车的测试中,电动汽车的与软件的问题相关的测试项目是根据台架试验或实车测试中出现的与软件相关的问题编制的整车测试项目。
与电动汽车的功能需求相关的其他测试项目是针以上两个项目未能覆盖的与电动汽车的功能需求相关的其他测试项目。例如,在电动汽车的测试中,与电动汽车的功能需求相关的其他测试项目包括根据电动汽车在特殊操作下出现的故障问题编制的整车测试项目。
功能测试集构成步骤S12:针对获取的与电动汽车的功能需求相关的测试项目,确定所述与电动汽车的功能需求相关的测试项目的测试条件以及测试条件之间的逻辑关系,构成功能测试集。
每个与电动汽车的功能需求相关的测试项目具有唯一的功能测试集编号,所述测试条件以及测试条件之间的逻辑关系与该测试项目的功能测试集编号相关联。
功能测试集是根据与电动汽车的功能需求相关的测试项目生成测试用例的重要部分。所述功能测试集具有测试条件的细分功能,能够将所述测试条件进一步拆分为多级拆分条件,如第一级拆分条件、第二级拆分条件……,同时在每级拆分条件中确定各拆分条件之间的逻辑关系。细分后的多级拆分条件和拆分条件之间的逻辑关系与功能测试集编号相关联。
真值表构建步骤S13:根据所述功能测试集,构建测试用例的真值表。
根据所述功能测试集的内容,所述测试条件及测试条件之间的逻辑关系、和多级拆分条件及多级拆分条件之间的逻辑关系,生成测试用例编号,构建测试用例的真值表。
在测试用例的真值表中,每一行可以对应一个测试用例,测试用例编号唯一,每一列可以对应测试用例的测试条件或多级拆分条件,且各列测试条件或多级拆分条件间具有一定的逻辑关系,所述逻辑关系来源于功能测试集,由此能够保证测试用例的全面覆盖及唯一性。
测试用例集构建步骤S14:根据所构建的测试用例的真值表,构建测试用例集。
所述测试用例集中包括多个测试用例,每个测试用例具有唯一的测试用例编号。
针对与电动汽车的功能需求相关的规范性测试项目,构建与电动汽车的功能需求相关的规范性测试项目的测试用例集。对应的测试用例的测试步骤包括实验准备步骤、实验设置步骤及检查步骤,对测试过程进行详细动作描述。
针对与软件的问题相关的测试项目,构建与软件的问题相关的测试项目的测试用例集。其中,软件测试中发现的每个问题对应一个测试项目,包括功能测试集编号、测试用例编号、问题点描述、原因分析等。对应的测试用例的测试步骤包括实验准备步骤、实验设置步骤、检查步骤及备注,备注内容为该测试用例适用的测试方式。
针对与电动汽车的功能需求相关的其他测试项目,构建与电动汽车的功能需求相关的其他测试项目的测试用例集,生成的测试用例集用于电动汽车模型在环测试及硬件在环测试(以实时处理器运行仿真模型来模拟受控对象的运行状态,通过I/O接口与被测的ECU连接,对被测ECU进行全方面的、系统的测试)。对应的测试用例的测试步骤包括实验准备步骤、实验设置步骤及检查步骤,对测试过程进行详细动作描述。
与电动汽车的功能需求相关的规范性测试项目的多个测试用例集、与软件的问题相关的测试项目的多个测试用例集和与电动汽车的功能需求相关的其他测试项目的多个测试用例集构成电动汽车的整车功能测试用例库,有效提高了测试用例的正确性和高效性。
关联测试用例获取步骤S20:识别MIL测试用例中的测试步骤信息,以从所述MIL测试用例中获取关联测试用例。
通过脚本工具编写测试用例提取脚本,所述脚本工具例如是Notepad++,识别MIL测试用例中与执行步骤和判断步骤相关的测试步骤信息,从而能够获取到相应的关联测试用例。由于MIL测试用例是对应于测试用例集中的测试用例的,因此,利用脚本工具获取的关联测试用例也对应于测试用例集中的测试用例,编号能够一一对应,任何一条关联测试用例都具有可追溯性。
HIL测试用例生成步骤S30:根据获取的关联测试用例生成HIL测试用例。
在本发明实施例中,将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,所述HIL测试工具例如为dSPACE公司的Automation desk等。根据需要,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例可以包括执行步骤和判断步骤,HIL测试用例编号与对应的MIL测试用例编号一致。
也可根据新增测试需求,在HIL测试工具中根据测试用例集中的测试用例新增HIL测试用例,而不受所述MIL测试用例限制。
利用HIL测试工具将HIL测试用例的实际输出与预期输出数据进行对比,检验是否通过测试,检验结束后HIL测试工具可自动生成测试报告。
对于所生成的HIL测试用例,可直接在该HIL测试工具中进行硬件在环测试。通过在HIL测试工具中运行HIL测试用例的执行步骤,HIL测试工具能够得到HIL测试用例的实际输出数据;通过运行HIL测试用例的判断步骤,HIL测试工具将HIL测试用例的实际输出数据与预期输出数据进行对比,从而检验是否通过测试,检验结束后HIL测试工具可自动生成基于HIL测试用例的测试报告。
在本发明实施例中,使用MIL测试用例关联的生成HIL测试用例,在保证测试用例可追溯的前提下,省去HIL测试用例的编写工作,可实现测试用例的高效利用,从而减少测试用例的编写工作量。
以下,以电动汽车整车控制器应用层软件测试为例,具体描述电动汽车进入可行使(Ready)状态的测试用例生成过程。
首先,获取电动汽车进入可行使(Ready)状态的测试项目。
随后,根据电动汽车进入可行使(Ready)状态的功能需求,确定测试条件。其中,测试条件包括高压系统上高压电完成、钥匙信号有效、无UDS禁止进入Ready请求和挡位无故障,上述各测试条件之间的逻辑关系为逻辑与“&”,即,高压系统上高压电完成&钥匙信号有效&无UDS禁止进入Ready请求&挡位无故障等条件同时满足时,车辆方可进入可行使(Ready)状态,由此构成功能测试集,如表一所示。
表一
对表一中的测试条件进行进一步拆分,形成第一级拆分条件,如表二所示。其中将测试条件“高压系统上高压电完成”拆分为第一级拆分条件“下电状态下,SSB一键启动”和“高压上电完成(KL15上电)”;将测试条件“接收到KL50信号”拆分为第一级拆分条件“接收到Start硬线信号”和“接收到CAN总线上的Start信号”,“接收到Start硬线信号”和“接收到CAN总线上的Start信号”之间的逻辑关系为逻辑或“|”;将测试条件“档位无故障”拆分为第一级拆分条件“无档位OpenCircuit故障”、“无档位PosShortGNDA故障”、“无档位ShotBat故障”和“无档位ShotGNDA故障”,“无档位OpenCircuit故障”、“无档位PosShortGNDA故障”、“无档位ShotBat故障”和“无档位ShotGNDA故障”之间的逻辑关系为逻辑与“&”。
表二
根据表二中的功能测试集可以自动生成测试项目的逻辑表达式
(C11|(C12&(C21|C22)))&C31&C41&C42&C43&C44,以及生成多个测试用例TSP_HPS_ED02_001至TSP_HPS_ED02_014,多个测试用例关于第一级拆分条件给出真值表,生成测试用例集,如表三所示。
表三
表三中不同的第一级拆分条件的真假关系所构成的一行即对应一条测试用例,能够以确保生成的测试用例的覆盖充分性和唯一性。
通过真值表,可形成测试用例对应的测试步骤。每条测试用例的步骤包括实验准备步骤、实验设置步骤及检查步骤,对测试过程进行详细动作描述,如表四所示。
表四
实验准备步骤中,可根据条件设定车辆测试前的状态,如本例中设定了车辆系统处于高压上电状态或高压下电状态;实验设置步骤中,对真值表中的条件关系进行文字描述,设定的条件为真时,执行相应的动作,设定的条件为假时,执行与条件相反的动作,如C31条件为无UDS禁止进入Ready请求,若设定该条件为假,则应执行输入UDS禁止进入Ready请求动作;检查步骤,为测试的预期结果,若测试用例的输出结果与预期结果相符,则通过该条测试条件,如本例中的预期结果是检查车辆是否进入可行驶(Ready)状态。基于本发明建立的测试用例库,即可有效生成车辆进入可行驶状态功能相关的测试用例集。
利用TPT软件做为MIL测试工具,根据表四中测试用例编号为TSP_HPS_ED02_006、TSP_HPS_ED02_007和TSP_HPS_ED02_008的测试用例,生成MIL测试用例,如表五所示:
表五
通过TPT软件能够便捷的找到对应的测试条件信号并赋值,生成信号级的MIL测试用例。由于TPT软件中关联了所需测试的模型,能够便捷的搜索及调取所需的模型信号。因此,根据测试用例集中的测试用例描述,生成对应的信号级的MIL测试用例。如系统处于KL15高压上电状态,对应的信号为R_KeyStatus_st=2,输入OpenCircuit故障对应信号为R_TCM_MotorOpenCircuit=1且R_TCM_MotorOpenCircuit_SW=1,输入PosShortGND故障对应的信号为R_TCM_MotorPosShortGND=1且R_TCM_MotorPosShortGND_SW=1,输入ShortBat故障对应信号为R_TCM_MotorShortBat=1且R_TCM_MotorShortBat_SW=1,检查是否未进入Ready对应信号为VCU_EVSysReadySt_Dsp=0(进入Ready状态值为1)。其中,测试用例各实施步骤根据需求可设置合理的时间间隔,如本例中,实验准备步骤中进入高压上电条件后,可等待2s后进入实验设置步骤,设置故障后可等待6s,即可结束本条测试用例的执行。
在脚本工具Notepad++中打开由TPT软件生成的MIL测试用例,通过编写测试用例获取脚本,识别MIL测试用例中的执行步骤和判断步骤的信息,获取可应用于HIL测试的关联测试用例。根据所获取的关联测试用例,生成HIL测试用例,HIL测试用例的编号及测试用例的信号均与MIL中的一致。在HIL测试中,测试用例具有选择性,可根据需求,选择生成需要的HIL测试用例,如仅生成编号为TSP_HPS_ED02_006的HIL测试用例。
在本发明的优选实施例中,在关联测试用例获取步骤S20,通过脚本工具编写测试用例获取脚本,仅识别MIL测试用例中与执行步骤相关的测试步骤信息,不识别MIL测试用例中与判断步骤相关的测试信息,因此只能获取到与执行步骤相关的关联测试用例。
在HIL测试用例生成步骤S30中,由于获取的关联测试用例仅包括相关的执行步骤,没有判断步骤,据此生成的HIL测试用例中也只有执行步骤,没有判断步骤。
在使用HIL测试工具对不包括判断步骤的HIL测试用例进行测试时,HIL测试工具仅能得到HIL测试用例的实际输出数据,生成例如扩展名为.MF4的HIL测试用例实际输出数据文档,而不能将HIL测试用例的实际输出与预期输出数据进行对比判断,不能检验测试用例是否通过测试。
基于上述情况,本发明实施例提供一种基于电动汽车的功能需求的测试用例的测试方法,用于对测试用例进行模型在环测试MIL和硬件在环测试HIL。
由于使用MIL工具生成的MIL测试用例中包括执行步骤和判断步骤,因此,利用MIL测试工具对MIL测试用例进行模型在环测试,将MIL测试用例的实际输出数据与预期输出数据进行对比,从而检验是否通过测试,检验结束后利用MIL测试工具可生成基于MIL测试用例的测试报告。
由于HIL测试工具生成的HIL测试用例中仅包括执行步骤,因此,利用HIL测试工具对HIL测试用例进行执行步骤的硬件在环测试,得到HIL测试用例的实际输出数据;利用MIL测试工具将HIL测试用例的实际输出数据与预期输出数据进行对比,从而检验是否通过测试,检验结束后利用MIL测试工具可生成基于HIL测试用例的测试报告。
在上述测试方法中,仅使用HIL测试工具对HIL测试用例进行执行步骤的硬件在环测试,使用MIL测试工具进行HIL测试和MIL测试的结果判定,减少了编写HIL测试用例的工作量,增强了MIL测试与HIL测试的测试结果的可比性。
根据本发明的再一个方面,本发明实施例提出了一种基于电动汽车的功能需求的测试用例生成装置,如图3所示,包括MIL测试用例生成部件、关联测试用例获取部件和HIL测试用例生成部件。
MIL测试用例生成部件根据测试用例集中的一个或多个测试用例,生成MIL测试用例。
MIL测试用例生成部件根据测试用例集中的一个或多个测试用例,利用MIL测试工具,如TPT等工具,编写MIL测试用例,所编写的MIL测试用例对应于测试用例集中测试用例,并且可以根据所述测试用例集中的一个或多个测试用例生成对应的一个或多个MIL测试用例。
这样,利用MIL测试工具实现了测试用例的文字描述到MIL测试工具可识别的基于信号的MIL测试用例的转换。利用MIL测试工具能够方便的实现基于信号的测试用例生成,生成的测试用例可读性强,且灵活度高。
MIL测试用例生成部件利用MIL测试工具中生成的MIL测试用例,所生成的MIL测试用例包括有执行步骤和判断步骤,可直接在该MIL测试工具中进行模型在环测试。通过运行MIL测试用例的执行步骤,MIL测试工具能够得到MIL测试用例的实际输出数据;通过运行MIL测试用例的判断步骤,MIL测试工具将MIL测试用例的实际输出数据与预期输出数据进行对比,从而检验是否通过测试,检验结束后MIL测试工具可自动生成基于MIL测试用例的测试报告。
所述测试用例集中每个测试用例都具有唯一的测试用例编号,因此,利用MIL测试工具编写MIL测试用例时,MIL测试用例编号应与测试用例集中的对应测试用例编号一致,确保功能测试的可追溯性。
关联测试用例获取部件识别MIL测试用例中的测试步骤信息,以从所述MIL测试用例中获取关联测试用例。
关联测试用例获取部件通过脚本工具编写测试用例提取脚本,所述脚本工具例如是Notepad++,识别MIL测试用例中与执行步骤和判断步骤相关的测试步骤信息,从而能够获取到相应的关联测试用例。由于MIL测试用例是对应于测试用例集中的测试用例的,因此,利用脚本工具获取的关联测试用例也对应于测试用例集中的测试用例,编号能够一一对应,任何一条关联测试用例都具有可追溯性。
HIL测试用例生成部件根据获取的关联测试用例生成HIL测试用例。
在本发明实施例中,HIL测试用例生成部件将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,所述HIL测试工具例如为dSPACE公司的Automation desk等。根据需要,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例可以包括执行步骤和判断步骤,HIL测试用例编号与对应的MIL测试用例编号一致。
也可根据新增测试需求,HIL测试用例生成部件在HIL测试工具中根据测试用例集中的测试用例新增HIL测试用例,而不受所述MIL测试用例限制。
HIL测试用例生成部件利用HIL测试工具将HIL测试用例的实际输出与预期输出数据进行对比,检验是否通过测试,检验结束后HIL测试工具可自动生成测试报告。
对于所生成的HIL测试用例,可直接在该HIL测试工具中进行硬件在环测试。通过在HIL测试工具中运行HIL测试用例的执行步骤,HIL测试工具能够得到HIL测试用例的实际输出数据;通过运行HIL测试用例的判断步骤,HIL测试工具将HIL测试用例的实际输出数据与预期输出数据进行对比,从而检验是否通过测试,检验结束后HIL测试工具可自动生成基于HIL测试用例的测试报告。
在本发明实施例中,使用MIL测试用例关联的生成HIL测试用例,在保证测试用例可追溯的前提下,省去HIL测试用例的编写工作,可实现测试用例的高效利用,从而减少测试用例的编写工作量。
可替换的,关联测试用例获取部件通过脚本工具编写测试用例获取脚本,仅识别MIL测试用例中与执行步骤相关的测试步骤信息,不识别MIL测试用例中与判断步骤相关的测试信息,因此只能获取到与执行步骤相关的关联测试用例。由此,HIL测试用例生成部件生成的HIL测试用例中也只有执行步骤,没有判断步骤。在使用HIL测试工具对不包括判断步骤的HIL测试用例进行测试时,HIL测试工具仅能得到HIL测试用例的实际输出数据,生成例如扩展名为.MF4的HIL测试用例实际输出数据文档,而不能将HIL测试用例的实际输出与预期输出数据进行对比判断,需要使用MIL测试工具进行上述判断。
在本发明的优选实施例中,所述基于电动汽车的功能需求的测试用例生成装置还包括测试用例集构建部件,所述测试用例集生成部件包括测试项目获取部件、功能测试集构成部件、真值表构建部件和测试用例集构建部件,如图4所示。
测试项目获取部件获取与电动汽车的功能需求相关的测试项目。
所述与电动汽车的功能需求相关的测试项目可以包括与电动汽车的功能需求相关的规范性测试项目、与软件的问题相关的测试项目及与电动汽车的功能需求相关的其他测试项目。
其中,与电动汽车的功能需求相关的规范性测试项目是以用户对电动汽车的需求为出发点编制的功能性测试项目,是生成测试用例的重要依据,测试用例覆盖度取决于对与电动汽车的功能需求相关的规范性测试项目中的测试条件的提取能力。例如,在电动汽车的测试中,与电动汽车的功能需求相关的规范性测试项目包括电动汽车进入可行使状态、电动汽车进入自动巡航状态、或者电动汽车进入停驶状态等。
与软件的问题相关的测试项目是根据实际测试中出现的与软件相关的问题编制的测试项目,将问题点纳入整车测试用例。例如,在电动汽车的测试中,电动汽车的与软件的问题相关的测试项目是根据台架试验或实车测试中出现的与软件相关的问题编制的整车测试项目。
与电动汽车的功能需求相关的其他测试项目是针以上两个项目未能覆盖的与电动汽车的功能需求相关的其他测试项目。例如,在电动汽车的测试中,与电动汽车的功能需求相关的其他测试项目包括根据电动汽车在特殊操作下出现的故障问题编制的整车测试项目。
功能测试集构成部件针对获取的与电动汽车的功能需求相关的测试项目,确定所述与电动汽车的功能需求相关的测试项目的测试条件以及测试条件之间的逻辑关系,构成功能测试集。
每个与电动汽车的功能需求相关的测试项目具有唯一的功能测试集编号,所述测试条件以及测试条件之间的逻辑关系与该测试项目的功能测试集编号相关联。
功能测试集是根据与电动汽车的功能需求相关的测试项目生成测试用例的重要部分。所述功能测试集具有测试条件的细分功能,能够将所述测试条件进一步拆分为多级拆分条件,如第一级拆分条件、第二级拆分条件……,同时在每级拆分条件中确定各拆分条件之间的逻辑关系。细分后的多级拆分条件和拆分条件之间的逻辑关系与功能测试集编号相关联。
真值表构建部件根据所述功能测试集,构建测试用例的真值表。
真值表构建部件根据所述功能测试集的内容,所述测试条件及测试条件之间的逻辑关系、和多级拆分条件及多级拆分条件之间的逻辑关系,生成测试用例编号,构建测试用例的真值表。
在测试用例的真值表中,每一行可以对应一个测试用例,测试用例编号唯一,每一列可以对应测试用例的测试条件或多级拆分条件,且各列测试条件或多级拆分条件间具有一定的逻辑关系,所述逻辑关系来源于功能测试集,由此能够保证测试用例的全面覆盖及唯一性。
测试用例集构建部件根据所构建的测试用例的真值表,构建测试用例集。
所述测试用例集中包括多个测试用例,每个测试用例具有唯一的测试用例编号。
针对与电动汽车的功能需求相关的规范性测试项目,测试用例集构建部件构建与电动汽车的功能需求相关的规范性测试项目的测试用例集。对应的测试用例的测试步骤包括实验准备步骤、实验设置步骤及检查步骤,对测试过程进行详细动作描述。
针对与软件的问题相关的测试项目,测试用例集构建部件构建与软件的问题相关的测试项目的测试用例集。其中,软件测试中发现的每个问题对应一个测试项目,包括功能测试集编号、测试用例编号、问题点描述、原因分析等。对应的测试用例的测试步骤包括实验准备步骤、实验设置步骤、检查步骤及备注,备注内容为该测试用例适用的测试方式。
针对与电动汽车的功能需求相关的其他测试项目,测试用例集构建部件构建与电动汽车的功能需求相关的其他测试项目的测试用例集,生成的测试用例集用于电动汽车模型在环测试及硬件在环测试(以实时处理器运行仿真模型来模拟受控对象的运行状态,通过I/O接口与被测的ECU连接,对被测ECU进行全方面的、系统的测试)。对应的测试用例的测试步骤包括实验准备步骤、实验设置步骤及检查步骤,对测试过程进行详细动作描述。
与电动汽车的功能需求相关的规范性测试项目的多个测试用例集、与软件的问题相关的测试项目的多个测试用例集和与电动汽车的功能需求相关的其他测试项目的多个测试用例集构成电动汽车的整车功能测试用例库,有效提高了测试用例的正确性和高效性。
本发明实施例还提出一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。
本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上,对本发明的实施方式进行了说明。但是,本发明不限定于上述实施方式。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于电动汽车的功能需求的测试用例生成方法,其特征在于,所述方法包括如下步骤:
根据测试用例集中的一个或多个测试用例,生成MIL测试用例;
识别MIL测试用例中的测试步骤信息,以从所述MIL测试用例中获取关联测试用例;
根据获取的关联测试用例,生成HIL测试用例。
2.如权利要求1所述的测试用例生成方法,其特征在于,利用MIL测试工具生成MIL测试用例,所生成的MIL测试用例包括有执行步骤和判断步骤。
3.如权利要求2所述的测试用例生成方法,其特征在于,利用HIL测试工具中生成HIL测试用例,
将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例包括有执行步骤和判断步骤。
4.如权利要求2所述的测试用例生成方法,其特征在于,利用HIL测试工具中生成HIL测试用例,
将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例包括有执行步骤。
5.如权利要求1所述的测试用例生成方法,其特征在于,所述测试用例集的生成方法包括如下步骤:
获取与电动汽车的功能需求相关的测试项目;
针对获取的与电动汽车的功能需求相关的测试项目,确定所述与电动汽车的功能需求相关的测试项目的测试条件以及测试条件之间的逻辑关系,构成功能测试集;
根据所述功能测试集,构建测试用例的真值表;
根据所构建的测试用例的真值表,构建测试用例集。
6.一种基于电动汽车的功能需求的测试用例的测试方法,其特征在于,所述测试方法用于对测试用例进行模型在环测试和硬件在环测试,使用如权利要求4所述的测试用例生成方法得到的MIL测试用例和HIL测试用例,
利用MIL测试工具对MIL测试用例进行模型在环测试,将MIL测试用例的实际输出数据与预期输出数据进行对比,检验是否通过测试;
利用HIL测试工具对HIL测试用例进行硬件在环测试,得到HIL测试用例的实际输出数据,利用MIL测试工具将HIL测试用例的实际输出数据与预期输出数据进行对比,检验是否通过测试。
7.一种基于电动汽车的功能需求的测试用例生成装置,其特征在于,所述装置包括MIL测试用例生成部件、关联测试用例获取部件和HIL测试用例生成部件,
所述MIL测试用例生成部件根据测试用例集中的一个或多个测试用例,生成MIL测试用例;
所述关联测试用例获取部件识别MIL测试用例中的测试步骤信息,以从所述MIL测试用例中获取关联测试用例;
所述HIL测试用例生成部件根据获取的关联测试用例,生成HIL测试用例。
8.如权利要求7所述的测试用例生成装置,其特征在于,所述MIL测试用例生成部件利用MIL测试工具生成MIL测试用例,所生成的MIL测试用例包括有执行步骤和判断步骤。
9.如权利要求8所述的测试用例生成装置,其特征在于,所述HIL测试用例生成部件利用HIL测试工具中生成HIL测试用例,
所述HIL测试用例生成部件将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例包括有执行步骤和判断步骤。
10.如权利要求8所述的测试用例生成装置,其特征在于,所述HIL测试用例生成部件利用HIL测试工具中生成HIL测试用例,
所述HIL测试用例生成部件将从所述MIL测试用例中获取的关联测试用例导入到HIL测试工具中,利用HIL测试工具在导入的关联测试用例中选择全部或部分测试用例,生成HIL测试用例,所生成的HIL测试用例包括有执行步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910718556.7A CN110442522A (zh) | 2019-08-05 | 2019-08-05 | 基于电动汽车的功能需求的测试用例生成方法和测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910718556.7A CN110442522A (zh) | 2019-08-05 | 2019-08-05 | 基于电动汽车的功能需求的测试用例生成方法和测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110442522A true CN110442522A (zh) | 2019-11-12 |
Family
ID=68433326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910718556.7A Pending CN110442522A (zh) | 2019-08-05 | 2019-08-05 | 基于电动汽车的功能需求的测试用例生成方法和测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110442522A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111581101A (zh) * | 2020-05-11 | 2020-08-25 | 上海元城汽车技术有限公司 | 软件模型的测试方法、装置、设备和介质 |
CN112230627A (zh) * | 2020-10-30 | 2021-01-15 | 重庆长安汽车股份有限公司 | 一种车身控制器的远程测试方法 |
CN113360132A (zh) * | 2020-03-05 | 2021-09-07 | 北京车和家信息技术有限公司 | 实车测试数据的分析方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536856A (zh) * | 2014-12-12 | 2015-04-22 | 北京新能源汽车股份有限公司 | 汽车控制器测试的环境模型生成的方法及装置 |
CN105205006A (zh) * | 2015-10-30 | 2015-12-30 | 北京新能源汽车股份有限公司 | 多平台通用测试方法、装置和系统 |
CN107193740A (zh) * | 2017-05-23 | 2017-09-22 | 郑州云海信息技术有限公司 | 一种面向复用的软件测试用例测试系统及方法 |
CN108920350A (zh) * | 2018-06-29 | 2018-11-30 | 北京新能源汽车股份有限公司 | 一种测试环境模型生成的控制方法及控制装置 |
CN109491922A (zh) * | 2018-12-13 | 2019-03-19 | 北京轩宇信息技术有限公司 | 一种基于模型驱动的测试方法和装置 |
CN109669436A (zh) * | 2018-12-06 | 2019-04-23 | 广州小鹏汽车科技有限公司 | 一种基于电动汽车的功能需求的测试用例生成方法和装置 |
-
2019
- 2019-08-05 CN CN201910718556.7A patent/CN110442522A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536856A (zh) * | 2014-12-12 | 2015-04-22 | 北京新能源汽车股份有限公司 | 汽车控制器测试的环境模型生成的方法及装置 |
CN105205006A (zh) * | 2015-10-30 | 2015-12-30 | 北京新能源汽车股份有限公司 | 多平台通用测试方法、装置和系统 |
CN107193740A (zh) * | 2017-05-23 | 2017-09-22 | 郑州云海信息技术有限公司 | 一种面向复用的软件测试用例测试系统及方法 |
CN108920350A (zh) * | 2018-06-29 | 2018-11-30 | 北京新能源汽车股份有限公司 | 一种测试环境模型生成的控制方法及控制装置 |
CN109669436A (zh) * | 2018-12-06 | 2019-04-23 | 广州小鹏汽车科技有限公司 | 一种基于电动汽车的功能需求的测试用例生成方法和装置 |
CN109491922A (zh) * | 2018-12-13 | 2019-03-19 | 北京轩宇信息技术有限公司 | 一种基于模型驱动的测试方法和装置 |
Non-Patent Citations (3)
Title |
---|
DIGIIC: "HIL测试团队建设上篇-知识体系与角色划分", 《HTTPS://WWW.EEFOCUS.COM/DIGIIC/》 * |
DIGIIC: "HIL测试团队建设上篇-知识体系与角色划分", 《HTTPS://WWW.EEFOCUS.COM/DIGIIC/》, 8 February 2017 (2017-02-08), pages 1 - 3 * |
HIRAIN_MD: "Mx Suite — ISO 26262 认证的嵌入式软件一体化测试平台", pages 618 - 620, Retrieved from the Internet <URL:《ITPUB博客:http://blog.itpub.net/31535135/viewspace-2648644/》> * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360132A (zh) * | 2020-03-05 | 2021-09-07 | 北京车和家信息技术有限公司 | 实车测试数据的分析方法及装置 |
CN113360132B (zh) * | 2020-03-05 | 2023-12-19 | 北京车和家信息技术有限公司 | 实车测试数据的分析方法及装置 |
CN111581101A (zh) * | 2020-05-11 | 2020-08-25 | 上海元城汽车技术有限公司 | 软件模型的测试方法、装置、设备和介质 |
CN112230627A (zh) * | 2020-10-30 | 2021-01-15 | 重庆长安汽车股份有限公司 | 一种车身控制器的远程测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110442522A (zh) | 基于电动汽车的功能需求的测试用例生成方法和测试方法 | |
Alexander et al. | Towards the systematic testing of aspect-oriented programs | |
CN101571802A (zh) | 一种嵌入式软件测试数据可视化自动生成方法及系统 | |
CN111694741A (zh) | 一种基于路径深度覆盖的测试用例设计方法 | |
CN104850111B (zh) | 一种硬件在环测试方法及系统 | |
CN102486749A (zh) | 数据驱动测试方法及系统 | |
CN104077232A (zh) | 一种基于用例与源码双向追溯的测试装置及方法 | |
CN112597014A (zh) | 基于数据驱动的自动化测试方法、装置、介质及电子设备 | |
CN109669436A (zh) | 一种基于电动汽车的功能需求的测试用例生成方法和装置 | |
Wang et al. | Automated test case generation for the Paxos single-decree protocol using a Coloured Petri Net model | |
CN106815147A (zh) | 一种测试脚本生成方法及装置 | |
CN106776326A (zh) | 一种数据分析模型的建模方法及系统 | |
Brito et al. | Integration testing for robotic systems | |
US8751094B2 (en) | Method for validation of a graphically based executable control specification using model extraction | |
CN102957553B (zh) | 一种激励代码自动生成方法和装置 | |
CN114492258A (zh) | 随机约束和覆盖组同步方法 | |
CN106339553A (zh) | 一种空间飞行器的重构飞行控制方法及系统 | |
Cansell et al. | Refinement: A constructive approach to formal software design for a secure e-voting interface | |
CN108920846A (zh) | 一种高铁列控系统复杂运营场景的风险耦合分析方法 | |
CN111459800A (zh) | 一种业务系统可用性验证方法、装置、设备和介质 | |
US8751093B2 (en) | Hierarchical accumulated validation system and method | |
Zamfir et al. | On the design of an interactive automatic Python programming skills assessment system | |
CN114880241A (zh) | 任务机器人的测试方法、装置、电子设备及存储介质 | |
Miao et al. | A formal specification-based integration testing approach | |
Salamah et al. | Verifying pattern-generated LTL formulas: a case study |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191112 |