### 基础概念
知识点一
(1)软件测试:测试是为发现错误而执行的一个程序或系统的过程 (2)软件质量 :软件特性的总和,软件满足规定或潜在用户需求的能力 (3)质量属性6个特性:功能性,可靠性,易用性,效率,维护性,可移植性。而我们对一个软件的测试的基本点也就是这6个属性 (4)测试目的:测试是为了寻找错误,并尽最大可能找出最多的错误,并对软件质量进行度量与评估,以提高软件质量。 (5)质量保证(QA)与软件测试(QC) 1)质量保证(QA):关注的产品开发、测试过程的管理与控制 2)软件测试(QC):关注的产品本身的质量,也就是测试 (6)测试原则: 所有的软件测试都应追溯到用户需求(以需求为准则) 2)应当把“尽早地和不断的进行软件测试”(及早发现成本越少、影响越小) 3)完全测试是不可能的,测试需要终止 4)测试无法显示软件潜在缺陷 5)充分注意测试中的群集现象 6)程序员应避免检查自己的程序 7)尽量避免测试的随意性 (7)使用质量是从用户的角度看待的质量,属性分为4种特性:有效性,生产率,安全性和满意度。
知识点二 (1)软件开发模型 瀑布模型、迭代式模型、螺旋模型、敏捷开发 (2)软件测试模型 (3)测试的分类 1)测试分类 按开发阶段划分:单元测试,集成测试,确认测试,系统测试,验收测试 按测试组织划分:开发方测试(α测试),用户测试(β测试),第三方测试 按测试技术划分:白盒测试,黑盒测试,灰盒测试 按照测试种类划分:功能测试与性能测试 2)测试阶段名词解释 ①单元测试:对编写的每一个程序模块进行测试,可以是一个接口,一个类,一个函数,也称为模块测试。 ②集成测试:在模块测试通过后,对集成在一起的模块组件进行测试,也称为部件测试 ③接口测试:接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。 ④系统测试:将软件安装在运行环境下,对硬件,网络,操作系统及支撑平台等构成的整体系统进行测试。 ⑤验收测试:按照软件项目任务书或合同,供需双方约定的验收含依据文档进行的对整个系统的测试与评审,决定是否接受或拒收系统。 ⑥黑盒测试:通过软件的外部表现来发现缺陷和错误 黑盒测试是把测试对象看成是一个黑盒子,完全不考虑程序内部结构和处理过程。 它只是检测程序是否按需求说明书规定正常实现。黑合测试也称功能测试,是以用户的角度,从输入输出数据的对应关系出发进行测试的。如果外部特性本身有问题或规格说明书本身有误,黑合测试是发现不了的。 ⑦白盒测试:通过对程序内部结构分析来寻找问题。白盒测试是把程序看成是装在一个透明的 白盒子里,清楚了解程序结构和处理逻辑过程。检查所有路径及条件是否正确。 白盒测试又称结构测试。 ⑧性能测试 软件的性能包括很多方面,主要有时间性能和空间性能两种。 时间性能:主要是指软件的一个具体的响应时间。比如一个登录所需要的时间,一个交易所需要的时间等。当然,抛开具体的测试环境,来分析一次事务的响应时间是没有任何意义的。需要搭建一个具体且独立的测试环境。 空间性能:空间性能:主要指软件运行时所消耗的系统资源,比如硬件资源,CPU、内存,网络带宽消耗等。 ⑨冒烟测试、回归测试、随机测试,其中冒烟是对主流程的测试一般是有开发完成在正式提测之前。回归测试是指提交BUG后开发改完后对BUG的回归验证,随机测试是指对随机选取系统的某一功能进行测试
知识点三 (1)测试方法 1)白盒 ①静态分析 ②动态分析 2)黑盒(也是测试用例的设计方法) ①等价类划分(最常用) ②边界值分析法(最常用) ③因果图分析法 ④错误推测法 (也叫错误猜想法) ⑤判定表驱动法 ⑥正交试验设计法 ⑦流程图法(最常用)(单元测试也用这个) 3)灰盒 介于白盒与黑盒测试之间,也就是说及研究底层代码也关心系统输入
|