测试前7章总结

来源:互联网 发布:上海老年人口 知乎 编辑:程序博客网 时间:2024/05/21 10:33

理论内容:

 

第一章  软件

 

软件的定义:数据+程序+文档(软件由代码编写而成,数据是由输入和输出而生成,而文档伴随着整个软件生命周期)

软件工程:方法、工具、过程。

 

第二章 软件生命周期

 

瀑布模型:计划、需求分析、设计、编码、测试、运行·维护(先做后测试)

“V”模型:边做边测试。

迭代模型:功能一步步的叠加,边做边测试。

 

第三章 软件测试

 

软件测试的定义:是对软件需求分析、设计、编码的最终复查的一系列过程,是软件质量保证的关键步骤,测试是为了发现错误,为了满足用户的需求。

测试流程:测试计划、需求分析、设计用例、开发用例、执行用例、测试报告评估(基于缺陷)

 

第四章  软件测试分类

 

(1)是否关心内部结构:

白盒测试:又称逻辑驱动测试是一种按照程序内部逻辑结构和编码结构设计测试数据并完成测试的一种测试方法,运用于单元测试阶段。

黑盒测试:又称数据驱动测试是把测试对象当作看不见内部的黑盒,在完全不考虑程序内部结构和处理过程的情况下,测试者仅依据程序功能的需求规范考虑,确定测试用例和推断测试结果的正确性.

灰盒测试:介于白盒测试和黑盒测试之间将两者融合起来的一种测试方法,主要用于集成测试阶段。

(2)开发过程级别:

单元测试:针对单个软件单元的测试。在模块中应对每一条独立执行路径进行测试,单元测试的基本任务是保证模块中每条路径至少执行一次。运用的是白盒测试。

集成测试:目的是检验软件单元/系统之间的接口关系。运用的是灰盒测试。

系统测试:系统测试是将已经集成好的软件系统作为计算机系统的一部分,与计算机系统硬件、某些支持软件、数据和人员等系统元素结合起来,在实际运行环境下对计算机系统进行一系列严格有效的测试。运用的是黑盒测试。

验收测试:又叫用户验收测试,通常由使用系统的用户进行测试。

(3)是否执行程序:

静态测试:指不执行程序代码而寻找代码中可能存在的错误或评估程序代码的过程。

动态测试:指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率、正确性和健壮性等性能

(4)执行是否需要人工干预:

手工测试:由人去一个一个的输入用例,然后观察结果,从而发现错误。

自动化测试:是把以人为驱动的测试行为转化为机器执行的一种过程。一般用于大产品,成本高于手工测试。

(5)测试实施组织:

开发测试:与单元测试相联系。

用户测试与验收测试相联系。

第三方测试。

 

第五章  软件缺陷

 

软件缺陷的定义:

从产品内部看,缺陷是软件产品开发或维护过程中存在的错误、毛病等各种问题。

从产品外部看,缺陷是系统所需要实现的某种功能的失效或违背。

在软件生命周期各阶段都可能有缺陷的产生。

缺陷生命周期。

缺陷报告:缺陷标题,报告人,报告日期,配置,严重性,优先级,缺陷类型,重现步骤,结果对比,复建过程。

 

第七章 静态测试

 

同行评审的定义:

由开发软件产品作者以外的其他人检查工作产品,以发现缺陷并寻找改进的机会。适用于软件生命周期各阶段。

五种评审方法:

审查:非作者等专家在内的针对特定对象进行检查以发现缺陷的过程,最正式,有正规的流程,每个阶段有确定的内容,需要的成本最高,发现的问题最多。

小组评审:一种“轻型审查”,可采用审查的指导方针和流程,没有审查那么正式和严格,会议期间读者的角色由评审组长代替,发现问题的数量是审查的2/3,成本低于审查。

走查:是产品的作者向一组同事说明该产品,希望获得他们的意见以满足自己的需要,没有标准的流程可循,过程由作者主持,比审查发现的缺陷数量要少一半,成本低于小组评审。

同级桌查:除作者以外只有一位评审专家对工作产品进行检查,无标准流程,只有一位评审专家,发现问题较少,成本低于走查。

临时评审:请团队内其他同事帮忙,在短时间内解决一些问题,最不正式,无标准流程,团队同时帮忙,发现问题较少,最不正式,成本最低。

0 0