- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Ch3软件测试方法STMT研讨
2. Determine the cyclomatic complexity of the resultant flow graph Note: can be determined without developing a flow graph count all conditional statements in a component ? compound conditions count as 2 (number of Boolean operators + 2) 3. Determine a basis set of linearly independent paths equal to cyclomatic complexity number identify predicate nodes as an aid in derivation of test cases 4. Prepare test cases that will force execution of each path in the basis set each test case is executed and compared to the expected result this process can be mechanized 3.5 形式化测试方法 3.5.1 形式化方法 3.5.2 形式化验证 3.5.3 基于模型的软件测试 3.5.4 扩展有限状态机方法 Zhu.Kerry@ 3.5.1 形式化方法 形式化方法实际上就是基于数学的方法来描述目标软件系统属性的一种技术 凡是采用严格的数学语言、具有精确的数学语义的方法,都称为形式化方法。形式化规范说明语言,一般由3个主要的成分构成:语法、语义和一组关系 形式化方法更大作用是体现在软件规格和验证之上,这包括软件系统的精确建模和软件规格特性的具体描述,即可以看作是面向模型的形式化方法和面向属性的形式化方法 Zhu.Kerry@ 形式化的具体方法 基于模型的方法,如Z语言、B语言等 代数方法,如OBJ、CLEAR、ASL、ACT等 过程代数方法,如CSP、CCS、ACP、LOTOS、TPCCS等 基于逻辑的方法,如区间时序逻)、Hoare 逻辑、模态逻辑、时序逻辑、时序代理模型等。 基于网络的方法 Zhu.Kerry@ 3.5.2 形式化验证 形式化验证,就是根据某些形式规范或属性,使用形式逻辑方法证明其正确性或非正确性。 一般通过形式化规范进行分析和推理,研究它的各种静态和动态性质,验证是否一致、完整,从而找出所存在的错误和缺陷。 无法证明某个系统没有缺陷,因为不能定义 “没有缺陷”。只能证明一个系统不存在我们可以想得到的缺陷,以及验证满足系统质量要求的属性 Zhu.Kerry@ 形式化验证的一些具体方法 有限状态机(FSM)或扩展有限状态机(EFSM) SPIN和线性时态语言 UML 语义转换 标准RBAC模型 扩展的RBAC模型和基于粒计算的RBAC模型? 符号模型检验 BAN逻辑模型 Zhu.Kerry@ 3.5.3 基于模型的软件测试 基于模型的测试(Model-based testing,MBT)是利用模型来生成相应的测试用例,然后根据实际结果和原先预想的结果的差异来测试系统 先从概念上形成模型,然后试图用数学的方法来描述这个模型,形成仿真模型,完成所需的测试 Zhu.Kerry@ MBT的优缺点 测试效率高 对逻辑复杂故障测试效果好 容易实现自动化测试 Zhu.Kerry@ 优点 缺点 误报问题 漏报问题 模型机理 软件测试模型 故障模型。 安全漏洞模型 差性能模型 并发故障模型 不良习惯模型 代码国际化模型 易诱骗代码模型 Zhu.Kerry@ 检测步骤 预处理/预编译 词法分析(Lexical Analysis) 语法分析( Parsing) 和语义处理( Semantic Analysis) 抽象语法树生成 控制流图生成 IP 扫描 人工确认。 Zhu.Kerry@ 3.5.4 扩展有限状态机方法 有限状态机是一种用来进行对象行为建模的工具,其作用主要是描述对象在它的生命周期内所经历的状态序列,以及如何响应来自外界的各种事件 Zhu.Kerry@ EFSM示例-1 Zhu.Kerry@ EFSM示例-2 Zhu.Kerry@ EFSM工具 - FSME Zhu.Kerry@ 3.6 基于风险的测试 测试就是“对软件系统中潜在的各种风险进行评估的活动 基于风险的测试是指评估测试的优先级,先做高优先级的测试,如果时间或精力不够,低优先级的测试可以暂时先不做 软件产品的风险度可以通过出错的影响程度和出现的概率来计算 Zhu.Kerry@ 风险度量 Z
文档评论(0)