软件测试框架1

一、 软件相关知识

1.什么是软件?

软件=程序(源程序,目的程序)+数据+文档

备注:软件测试对象包括以上三部分

2.IT技术部门结构组成

1) 产品部:用户需求文档(预期结果),界面原型图

2) 开发部:编码,得到程序(源程序,目的程序)(实际结果)

3) 测试部:比对实际结果与预期结果之间的差别(得到程序的bug、文档的bug、数据的bug)

4) 运维部:后期运行上线中涉及的数据维护、技术问题等。

3.软件的生命周期(软件是怎么做出来的?)

1) 项目计划

2) 需求(需求规格说明书SRS)

3) 设计(概要设计说明书+详细设计说明书)

4) 编码(源程序,目的程序)

5) 测试(bug)

6) 运行上线

(测试从需求阶段就开始介入)

(瀑布模型中测试在编码之后介入)

4.软件的项目组成人员

1) 项目经理

2) 需求分析人员

3) 设计人员

4) 编码人员

5) 测试人员

6) 运维人员

7) 配置管理人员:

  配置项=代码+文档,整个软件研发过程中所有交付件。

8) SQA:软件质量保障工程师

  职责:

a) 指定规范,流程

b) 监督项目组成人员按照流程工作,若违反,提出NC项(不符合项)

c)检测评审项目成果,尤其是测试交付件

5.软件研发模型/流程

1) 瀑布模型

100%需求——100%设计——100%编码——100%测试——投入使用

优点:需求稳定,重复工作少,质量高

缺点:项目周期长,成本高

2) 螺旋模型

50%需求——50%设计——50%编码——50%测试——首版本上线

版本迭代,迭代周期4-8个月

3) 敏捷模型(小版本迭代)

20%需求——20%设计——20%编码——20%测试——首版本上线

版本迭代,平均迭代周期1个月左右

优点:项目周期短,小版本迭代,快速上线

缺点:需求不稳定,重复工作多,质量下降

6.软件缺陷引入的原因

1) 需求:50%~60% 不重视需求导致频繁变更

2) 设计:20%

3) 编码:15%

4) 其他:5%

7. 软件缺陷的分类

1) 遗漏:软件未实现需求中明确说明的部分

2) 错误:软件中的实际效果与需求中描述的不一致

3) 额外实现:软件实现了需求中未明确说明的部分

二、测试基础

1.软件测试的定义

使用人工或自动化的手段来运行软件的过程,其目的在于检测他是否满足规定的需求,或是弄清楚预期结果与实际结果之间的差别

2. 软件测试的目的

1) 发现错误 有些错误偶发,有些错误藏很深

2) 检测是否满足功能需求、性能需求、可靠性需求等

3) 软件测试不能证明软件不存在缺陷

3.软件测试的原则

1) 所有的测试工作都应该追溯到用户需求

2) 尽早启动测试工作,需求阶段就介入

 

3) 穷尽测试是不可能的

4) 测试是有风险的 遗漏

5) 并非所有的缺陷都值得修复

6) 杀虫剂怪事(测试用例对缺陷存在免疫能力)

7) 帕累托法则,28法则

80%缺陷存在于20%的核心业务模块中

8) Bug的群集效应

发现的缺陷越多,说明存在的缺陷越多

A25个bug  B6个bug 增强测试谁

9) 前进两步,后退一步

V1.00

5000=500fail+4500pass

V1.01 回归测试

(1)验证缺陷修复是否正确(执行500条用例)

(2)重复测试

——完全重复测试(工作量巨大,考虑使用自动化)

——选择重复测试(主要选择相关功能进行重复测试)

三、测试方法

1.根据测试技术划分(根据是否关注程序内部结构)

1) 黑盒测试:不需要关注程序内部结构

2) 白盒测试:需要分析程序源代码(代码走查,写驱动,打桩)

3) 灰盒测试:白加黑

2.根据是否动态运行软件

1) 静态测试:测试过程中不需要运行软件,包括代码走查、需求评审、文档测试、用例评审

2) 动态测试:测试过程中需要运行软件

3.根据是否使用自动化测试工具

1) 人工测试

2) 自动化测试

四、测试过程

1、 测试阶段

1) 单元测试(UT)

    1. 测试范围:最小单位,函数或类
    2. 测试依据:详细设计说明书
    3. 测试方法:白盒测试
    4. 评估基准:逻辑覆盖,每个逻辑都测

2) 集成测试(IT,组装测试)

    1. 测试范围:模块之间的接口,集成后的功能
    2. 测试依据:概要设计说明书(概设)
    3. 测试方法:灰盒测试
    4. 评估基准:接口覆盖

3) 系统测试(ST)

    1. 测试范围:整个系统的功能及非功能(性能、兼容、安全、界面等等)
    2. 测试依据:需求规格说明书(SRS)
    3. 测试方法:黑盒测试
    4. 评估基准:需求覆盖

4) 验收测试(UAT)

    1. 三种测试策略

a) 正式验收测试(外包)

——参与人员:以用户为主的测试,参与人员包括项目组人员(产品、开发、测试),用户代表

——验收测试的结果,两种(用户可接受;用户不可接受)

b) α测试:

——用户参与测试,在开发场地开展,旁边有技术人员指导

c) β测试:

——用户参与测试,在用户实际环境展开,无技术人员指导

 

 

 

 

posted @ 2020-07-27 09:27  HEREISDAVID  阅读(1356)  评论(2编辑  收藏  举报