“携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第13天,点击查看活动详情”
#摘要
在Typescript-接口(interface)进阶篇 + 基础篇完成接口的学习,接下来我们将会进行TS类的学习。通过使用类,可以让我们的代码,更加优秀。
软件测试
软件测试分为静态测试与动态测试。
- 静态测试:主要是人工检测的方式。
- 动态测试
- 黑盒测试:无法看到内部的内容。例如:一个函数,我们只需要看他的输入和输入是否满足我们的需求,而不是去纠结内部的流程。
- 等价类划分
- 边值分析
- 错误判断
- 因果图
- 白盒测试:测试内部的流程。一个函数中,条件判断等相关流程具体是怎么是怎么实现,是否正确。
- 逻辑覆盖
- 语句覆盖
- 判定覆盖
- 条件覆盖
- 条件判定覆盖
- 路径覆盖
- 条件组合
- 循环覆盖
上面这些不需要过多的去研究,了解一下就可以了,应为在平时的开发工作中,一般不会去区分这些内容。
# v模型
RAD(Rapid Application Development,快速应用开发)模型是软件开发过程中的一个重要模型,由于其模型构图形似字母V,所以又称软件测试的V模型。
v模型对整个软件开发阶段进行分析,并对每一个不同的阶段的设计对应的测试。
- 客户需求 -》 验收测试
- 规格说明 -》 系统测试
- 概要设计 -》 集成测试
- 详细设计 -》 单元测试
## 单元测试(白盒测试)
验证并确认详细设计阶段的问题,单元测试由程序员自行测试。一般是使用的白盒测试方法,测试计划应在详细设计阶段指定。
## 集成测试(黑盒测试)
目的:发现模块间的接口盒通讯问题。验收并确认概要设计。按照系统设计说明书的要求进行组合测试。对于各个模块组成的程序进行测试。
集成测试主要发现设计阶段产生的错误,集成测试计划应该在概要设计阶段指定。
## 系统测试(黑盒测试)
目的:验证与确认规格需求。软件放在使用的硬件和网络环境中进行测试,主要测试软件的非功能性需求和质量属性是否满足。
常见的测试有:恢复测试、安全测试、强度测试、性能测试、可靠性测试和安装测试。
## 验收测试(黑盒测试)
目的:验收与确认需求。检测软件的功能、性能和其他特征是否与用户的需求一致,以需求规格说明为依据的测试。
用户认可和专家验收后,交付给用户使用。
软件维护
软件维护及软件交付给用户后,根据用户的需求来进行的维护。可以分为一下几类。
- 正确性维护:改正系统开发阶段以及测试阶段尚未发生的错误。
- 适应性维护:应用软件适应新技术变化和管理需求变化而进行修改。
- 预防性维护:改进应用软件的可靠性和维护性,为适应未来的硬件与软件环境变化,使得系统适应各类变化而不会被淘汰。
- 完善性维护:主要是拓展和改进功能和性能,主要是添加一些软件设计以及软件分析阶段不存在的功能。