作者:郑文强
时间:2019年7月19日
谈到功能测试和非功能测试,让我们先了解ISTQB参考的质量模型标准:ISO/IEC 25010。在ISTQB FL基础级2011版本中,其参考的质量模型是ISO 9216,而在2018版本中参考的是ISO 25010。具体ISO 25010质量模型框架见文章最后。
测试过程中,经常会将质量特性分为功能和非功能两类。在ISO 25010质量模型中,我们可以将第一项功能适用性(Functional Suitability)看成是功能测试范畴,而将剩下的质量特性看成是非功能测试范畴。
1、功能测试
提到功能测试,首先了解一下什么是功能需求和功能测试的定义:
1)功能需求:指定组件或系统必须能够执行的功能的需求。
2)功能测试:为评估某组件或系统是否符合功能要求而进行的测试。
功能指的是被测对象应该“做什么”。功能需求通常在典型V模型左边输出的工作产品中描述,例如:业务需求说明、系统需求说明、功能说明、用例或用户故事等。功能需求也可能没有文档记录,只是存在于开发人员的头脑中。
典型V模型右边的每个测试级别都需要开展功能测试,尽管它们关注点会不一样,例如:组件测试通常关注在每个组件内部的要求,而集成测试需关注在不同组件之间的接口部分。功能测试考虑的是被测对象的外部行为,因此黑盒测试技术都可以作为获取被测对象的测试条件和测试用例的手段。例如:针对与不同逻辑条件下可以得到不同结果的场景,判定表测试和因果图技术是首选的测试技术。同时通过黑盒测试技术也可以细化前期识别的测试条件、选择测试数据作为输入,以及确定测试输入的组合。
功能测试的完整性可以通过功能覆盖来测量。功