软件测试及标准(基于ISO/IEC/IEEE 29119系列)

ISO/IEC/IEEE 29119系列软件测试标准的目的是为软件测试定义一套国际公认的标准,基于模型的测试(MBT)提供了一种系统的自动化方法来促进对软件系统的严格测试。任何组织在进行任何形式的软件测试时都可以使用。此Blog最后面附所有ISO/IEC/IEEE 29119系列软件测试标准。

1. 软件测试标准的相关定义(基于ISO 29119)

2. 测试文件架构(基于ISO 29119-3)

3. 软件测试的概念模型

  1. .测试用例(Test Case)和测试集(Test Set)
    测试中的第一个也是最重要的概念是测试用例,其定义如表I的概念1所示,并在图1中建模为抽象概念测试用例。由于通常为软件测试定义了ISO标准,因此我们对概念进行了专门化 支持MBT的两个概念分别是:抽象测试用例和具体测试用例,分别如图2和图3所示。


  2. 测试模型(Test Model)
    测试模型概念在图5中建模,显示了它与其他测试概念的关系,并且是用于派生抽象/具体测试用例的模型。 UML中的测试模型的一个示例是UML状态机,从中可以导出一组抽象/具体的测试用例(例如,一系列状态和转换)。使用基于测试用例规范的测试设计技术开发测试模型,该技术通常以文本格式记录一个或多个测试用例。测试用例规范通常是“测试基础”的子集,“测试基础”是“用作测试用例设计基础的知识体系”。测试基础是用于导出测试用例规范,然后开发测试模型的第一组文档。测试依据的示例包括一组需求规范以及与测试项目无关的关于测试项目的所有其他信息。相反,测试用例规范是包含测试项目所有测试要求的文档。定义MBT技术时,并不一定总是需要提供可用于测试依据和测试用例规范的文档,因为我们在与行业合作伙伴合作时意识到,并且大多数测试用例规范都是从测试工程师和测试经理那里获得的默认知识而提供的。

  3. .测试程序(Test Procedure)
    ISO将测试程序定义为:“按测试顺序排列测试用例的顺序,以及设置初始前提条件和执行后的任何包装活动可能需要的任何相关操作”及其与其他相关概念的关系 在图6中。至于测试用例,我们将测试过程分为抽象测试过程和具体测试过程,两者之间的唯一区别是抽象测试过程包含测试数据规范,而具体测试过程包含测试数据。 MBT技术不一定需要像抽象测试案例和测试集一样,将抽象测试过程与具体测试过程分开。

  4. 测试计划(Test Plan)
    测试计划定义了测试目标和实现这些目标的测试活动。 测试计划中最重要的部分是MBT上下文中的测试策略,它实际上描述了基于测试目标测试测试项目的方法(例如,功能测试或超功能测试),如图7所示。测试活动的示例包括测试 生成,测试最小化和测试计划。 在本文的上下文中,我们仅将测试生成作为测试活动。
    测试项目(图7)具有一组相关的测试条件或测试需求,这些测试条件或测试需求描述了测试项目的可测试方面,例如功能,事务或功能, 与测试项目的功能集(例如,功能,要求和功能)有关。

  5. 测试覆盖率(Test Coverage)
    当测试驱动程序(Test Driver)对测试项目执行一组具体测试用例时,将计算测试覆盖率,结果如图8所示,覆盖了由测试条件(测试条件)定义的一组覆盖率项目。 测试项目的测试覆盖范围的示例包括代码覆盖范围,例如语句覆盖范围和分支覆盖范围。请注意,标准中的“测试覆盖范围”专门指测试项目上覆盖范围的覆盖范围,并且该标准并未为测试范围定义明确的概念。 测试模型的覆盖范围。 但是,“测试计划”内部的“测试策略”隐含地涵盖了“测试模型”的范围。 例如,考虑将UML状态机的示例作为测试模型,典型的测试覆盖率包括“所有状态覆盖率”和“所有过渡覆盖率”。

  6. 测试结果(Test Result)
    测试驱动程序在测试项目上执行具体的测试案例,并使用“测试结果”将测试案例中指定的预期结果与通过“通过/失败”标准从测试项目中获得的实际结果进行比较,以确定测试案例是否通过或失败 (图9)。 实际上,除了通过或失败之外,测试用例的结果也可能是不确定的,也可能是错误。 但是,这些概念未在标准中表示。

    至于方法及MBT建模等, 我们下次再讲。待续…

4. 软件标准

  1. ISO/IEC/IEEE 29119系列 软件和系统工程 - 软件测试(包含全部6份完整英文电子版标准文件)).rar
  2. ISO/IEC/IEEE 29119-1:2013 Software and systems engineering — Software testing — Part 1:Concepts and definitions(软件和系统工程 - 软件测试 - 第一部分:概念和定义
  3. ISO/IEC/IEEE 29119-2:2013 Software and systems engineering — Software testing — Part 2:Test processes (软件和系统工程 - 软件测试 - 第二部分:测试流程)
  4. ISO/IEC/IEEE 29119-3:2013 Software and systems engineering — Software testing — Part 3:Test documentation( 软件和系统工程 - 软件测试 - 第三部分:测试文档)
  5. ISO/IEC/IEEE 29119-4:2015 Software and systems engineering — Software testing — Part 4:Test techniques(软件和系统工程 - 软件测试 - 第四部分:测试技术)
  6. ISO/IEC/IEEE 29119-5:2016 Software and systems engineering — Software testing — Part 5:Keyword-Driven Testing(软件和系统工程 - 软件测试 - 第五部分:关键词驱动的测试)
  7. ISO/IEC TR 29119-11:2020 Software and systems engineering — Software testing — Part 11:Guidelines on the testing of AI-based systems(软件和系统工程-软件测试-第11部分:基于AI的系统测试指南)
  8. ISO/IEC 33063:2015 Information technology - Process assessment - Process assessment model for software testing( 信息技术 - 过程评估 - 软件测试的过程评估模型)
  9. ISO/IEC 30130:2016 Software engineering — Capabilities of software testing tools(软件工程 - 软件测试工具的能力)
  10. Guide to Advanced Software Testing (高级软件测试指南 2008年)
  11. Guide to Advanced Software Testing(高级软件测试指南 2014年)
  12. ISO/IEC 20246:2017 Software and systems engineering — Work product reviews(软件和系统工程 - 工作产品审查)

软件测试及标准(基于ISO/IEC/IEEE 29119系列)相关推荐

  1. 【2017年第4期】ISO/IEC JTC1/WG9大数据国际标准研究及对中国大数据标准化的影响...

    光亮1,张群2 1.华为技术有限公司,北京 100085:2. 中国电子技术标准化研究院,北京 100007 摘要:ISO/IEC JTC1/WG9是制定大数据基础性国际标准的官方组织,WG9在研的大 ...

  2. SQL 之后,GQL 成为 ISO/IEC 国际标准数据库语言项目

    Graph Query Language(GQL,图形查询语言) 是由同时维护 SQL 标准的国际工作组开发和维护的一种新语言. GQL 很大程度上借鉴了现有的语言,主要的灵感来自 Cypher(现在 ...

  3. ISO/IEC 9126 软件质量模型

    ISO/IEC 9126 (1991年发布)是一个软件质量的评估标准,后来被最新的软件质量标准ISO/IEC 25010:2011(2011年发布)取代. ISO/IEC 9126 软件质量模型 IS ...

  4. ISO/IEC 27001:2013 版变化

    ISO27001制定背景 ISO27000 从诞生到现在只不过 20 年间的事情,但基本上可以看出一个标准 "源于生活,高于生活"的发展特点,也就是说,一个真正普遍适用并能被普遍接 ...

  5. 一文读懂字符编码(ASCII、ISO 8859、GB系列、Unicode)

    一文读懂字符编码(ASCII.ISO 8859.GB系列.Unicode) 一.字符编码相关组织 1.1 ANSI 美国国家标准学会 1.2 Ecma 国际 1.3 ISO/IEC 1.4 统一码联盟 ...

  6. 国际著名标准化组织及ISO/IEC/ASTM/IEEE等国际标准免费下载地址

    在知识经济时代,标准已被称作世界的通用语言.你看不懂语言没关系,但是一个标准的图形符号,你就能看明白,很快能GET到你需要的信息.在没有标准的世界,不仅人与人之间难以沟通,机器.零部件以及产品之间的联 ...

  7. IEEE ISO/IEC简介

    IEEE: The world's largest professional association for the advancement of technology. 电气和电子工程师协会( IE ...

  8. c++语言iso标准,C++20标准 (ISO/IEC 14882:2020) 正式发布

    ISO C++ 委员会正式发布了C++20 标准,命名为 ISO/IEC 14882:2020. C++20 是一次重大的更新,引入了许多新特性: 模块 (Modules) 协程 (Coroutine ...

  9. IEEE 802.3标准就是ISO 802.3标准

    IEEE是英文Institute of Electrical and Electronics Engineers的简称,其中文译名是电气和电子工程师协会.该协会的总部设在美国,主要开发数据通信标准及其 ...

  10. 现行ISO/IEC软件工程国际标准

    现行ISO/IEC软件工程国际标准 点击:1038       更新时间:2005-10-21 10:38:36   标准代号 标准名称 1 ISO 3535:1977 格式设计表和布局图 2 ISO ...

最新文章

  1. oracle的addm,addm报告分析 - Oracle数据库管理 - ITPUB论坛-中国专业的IT技术社区
  2. 恶犬秒变萌汪:东京大学开源“治愈系”GAN图片拼贴工具 | 技术头条
  3. 手撸一个npm包,安利一下duiba-sprite
  4. redis相关知识记录整理
  5. python支持的编程范式有_【Python学习手册】chapter1 前面
  6. Laravel核心解读--用户认证系统的实现细节
  7. java中super_java中super的两种用法
  8. 05-IntelliJ IDEA清空项目缓存
  9. 怎样的数据分析才有价值
  10. C++const类型
  11. 【Spring】13、使用Spring 3的@value简化配置文件的读取
  12. android设备间实现无线投屏
  13. 2022电大国家开放大学网上形考任务-工程数学(本)非免费(非答案)
  14. 【历史上的今天】11 月 22 日:PHP 创始人诞生;2020 年图灵奖得主出生;IE 2.0 发布
  15. “人生就像滚雪球,重要的是发现很湿的雪和很长的坡。”+复利的力量
  16. linux polkitd 漏洞,Ubuntu Linux中的特权提升漏洞Dirty Sock分析(含PoC)
  17. 使用turtle绘制疫情加油图案
  18. 我的第一次CTF比赛(SDPC)
  19. 第二部分 太阳能预测(半经验模型)
  20. 不用u盘如何在小米电视上安装电视直播软件

热门文章

  1. 删除后别人的微信号变成wxid_“ 微信号 ” 和 “ 微信账号 ” 分别代表什么?...
  2. 非常好用的节假日查询接口
  3. 使用Retrofit和Rxjava实现外卖型二级列表购物车及进入地图显示位置信息
  4. 高薪物联网职业生涯所需的十大技能(转)
  5. win10五分钟自动锁屏
  6. php chinese.php,ChineseUtil
  7. Android Binder传递文件描述符原理分析
  8. 2022-5-6作业
  9. php 导出的excel 科学计数法显示处理(记笔记)
  10. 看程序员如何使用Python快速给视频添加字幕