自动化测试学习day1andday2-软件研发流程、软件测试基础
今天是本小白第一天学习自动化测试,记录一下,之后定期更新,以作监督。
一、软件研发流程
呃…学习测试麻,这个研发流程还是得了解了解。
什么是软件产品
简单讲,逻辑实体、随时间退化、对计算机系统有依赖性、没有摆脱手工开发方式、实现越来越复杂、成本昂贵。
软件分类
按功能划分:
系统软件:控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无需用户干预的各种程序的集合,主要功能是调度,监控和维护计算机系统
支持软件:用于开发、测试其他软件的软件,例如软件开发工具和软件测试工具。这些工具为程序员提供了一个开发和测试软件的环境,帮助他们更有效地编写和维护代码。、
应用软件:用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合。;
按部署结构划分:
单机版软件:只能在一台电脑上使用的软件。这种软件通常只能由一个人或一个团队开发,开发过程中不需要与其他电脑或服务器进行网络连接;
分布式软件:支持分布式处理的软件系统,它是在由通信网络互联的多处理机体系结构上执行任务的系统。它包括分布式操作系统、分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等;
二、软件研发流程
首先,看图
软件从最初的想法构思,到公开发行的过程,成为软件的开发过程。
开发过程有很多种不同的方式,在下面:
瀑布模型
线形的、顺序的开发模型。
特点:
线性化的模型结构
各阶段具有里程碑特征
基于文档的驱动
严格的阶段审查机制
优点:
提供了软件开发的基本框架,比较依靠”个人才艺“
缺点:
初始阶段指出全部要求,研发时间长,不好修改。
V模型
W模型
V模型的升级版
快速模型(敏捷开发)
三、软件的生命周期
四、软件测试流程
五、软件测试的目的
发现软件的缺陷与错误,对软件质量进行度量和评估,以提高软件的质量。
1、测试是在程序的执行过程中,发现错误;
2、一个好的测试用例在于能发现至今未发现的错误;
3、一个好的测试是发现了至今未发现的错误的测试;
——————————有点绕口——————————
六、软件质量
三点:
内部质量:从内部观点出发的软件产品特性的总体,针对内部质量需求被测量和评价的质量
外部质量:它是当软件执行时,更典型的是使用外部度量在模拟环境中,用模拟数据测试时,所被测量和评估的质量
使用质量:从用户观点出发,来看待软件产品用于特定环境和条件下的质量。测量用户在特点环境中达到其任务目标的程度。
内部和外部质量
我懒得写了看图
课后作业
软件的组成是什么?
软件的组成主要包括程序、数据和文档三个部分。程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发、维护和使用有关的图文材料。
软件工程的模型
瀑布、V、W、敏捷
软件的生命周期
需求—分析—编码—测试—维护—升级—废弃
软件测试分类包含了什么,分别是意思?
单元测试:对最小可测试单元进行检查和验证,一般就是开发自己测自己的代码
集成测试:分为增量和非增量,增量:一个模块一个模块加进来测,非增量:所有模块放一起,然后测;
确认测试:向未来用户表面能够像预定要求那样工资;
系统测试:针对整个产品系统进行测试,将已经确认的软件、硬件、外设、网络等等因素结合,进行各种测试。
验收测试:确定产品是否满足合同或者用户所需要求的测试;也分为a测试:给内部人员测试、β测试:给用户测试
除了以上也可以分为:
黑盒测试:不看代码,只看功能,不管你代码咋写的;
白盒测试:看代码的,看看你代码好不好,一般需要很高水平;
灰盒测试:介于两者之间,看一些代码。
测试工程师的职责
完