软件测试

祝衍军

目录

  • 1 软件测试概述
    • 1.1 软件测试概述
    • 1.2 软件缺陷(BUG)
    • 1.3 软件测试职业发展
    • 1.4 软件测试分类
    • 1.5 软件测试流程
    • 1.6 课程思政:秘书也疯狂的故事
  • 2 黑盒测试
    • 2.1 黑盒测试概述
    • 2.2 等价类划分法
    • 2.3 边界值分析法
    • 2.4 决策表法
    • 2.5 正交实验设计法
    • 2.6 场景测试法
    • 2.7 错误推测法
    • 2.8 功能需求分析
    • 2.9 测试用例设计
    • 2.10 课程思政:五笔输入法的故事
  • 3 测试执行
    • 3.1 测试计划
    • 3.2 测试执行BUG记录
  • 4 白盒测试
    • 4.1 白盒测试概述
    • 4.2 程序流程图设计
    • 4.3 白盒测试用例设计
    • 4.4 JUnit单元测试
    • 4.5 课程思政:WPS的故事
  • 5 Web应用软件自动化测试
    • 5.1 Python自动化测试基本框架
    • 5.2 登录页面测试脚本设计
    • 5.3 新增文章页面测试脚本设计
    • 5.4 基于Unitest的登录测试用例集脚本设计
    • 5.5 课程思政:大并发案例阿里云的小故事
  • 6 智能终端APP自动化测试
    • 6.1 企业案例
    • 6.2 Android智能终端设备连接
    • 6.3 Android APP应用自动化测试
    • 6.4 Monkey 压力测试
    • 6.5 课程思政:鸿蒙的故事
  • 7 JMeter性能测试
    • 7.1 性能测试需求分析
    • 7.2 文章新增脚本开发
    • 7.3 文章新增脚本完善
    • 7.4 场景设计与运行结果分析
    • 7.5 课程思政:12306网站的技术进步故事
  • 8 Postman接口测试
    • 8.1 Postman
    • 8.2 企业网站管理内容系统接口测试
  • 9 Loadrunner性能测试(1+x考证高级相关知识点)
    • 9.1 录制回放
    • 9.2 思考时间设置
    • 9.3 检查点设置
    • 9.4 参数化设置
    • 9.5 关联设置
    • 9.6 集合点设置
    • 9.7 场景设计与运行分析
  • 10 省技能大赛
    • 10.1 竞赛系统
    • 10.2 相关知识
  • 11 企业案例
    • 11.1 软件测试公司真实案例
软件缺陷(BUG)


软件缺陷

1.1、软件测试的目的

(1)确保产品完成了它所承诺或公布的功能,并且所有用户可以访问到的功能都有明确的书面说明——在某种意义上与ISO9001是同一种思想。

(2)确保产品满足性能和效率的要求。

(3)确保产品是健壮的和适应用户环境的。

1.2导致软件缺陷的原因

Ø可以从软件自身特点、团队工作和项目管理等多个方面进行分析,找出导致软件缺陷的一些原因,这可以归纳为如下3个方面。

1)软件开发过程自身的特点造成的问题

         需求不清晰;系统结构非常复杂;系统运行环境的复杂

2)团队工作的问题

         不同阶段的开发人员相互理解不一致;项目组成员技术水平参差不齐

3)软件项目管理的问题

         缺乏质量文化,不重视质量计划;开发周期短

1.3 软件缺陷到底是什么

Ø(测试执行阶段的问题)

Defect---------Requirements&Design

Error-----------Development

Bug------------Testing

Failure---------Postproduction

用于描述软件故障、软件失败的术语有很多,比如说,缺点(defect)、偏差(variance)、谬误(fault)、 失败(failure)、问题(problem)、矛盾(inconsistency)、错误(error)、毛病(incident)、异常(anomaly)、缺陷(bug)等等。

Ø广义上来说,缺陷定义:

软件或程序或其相关的文档 的运行结果与用户需求不一致的地方。

一般来说,判定依据是用户需求规格说明书。

Ø软件缺陷的定义:

1)软件未达到产品说明书中已经标明的功能;

2)软件出现了产品说明书中指明不会出现的错误;

3)软件未达到产品说明书中虽未指出但应当达到的目标;

4)软件功能超出了产品说明书中指明的范围;

5)软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。

1.4 缺陷案例

Ø比如说,日常使用的计算机的产品需求规格说明书一般描述如下:计算器通过用户输入要计算的数字,能准确地完成加、减、乘、除的数学运算,并在显示屏上准确显示计算的结果。在任何时候计算机都不会出现显示错误结果的情况,不会出现“死机”无响应的情况,不会出现崩溃无法恢复的情况。

假设,测试员发现,按要求输入了两个数字12,并且按下了“+”键,要求进行加法数学运算,但是,最终计算器并没有在显示屏上显示结果,又或者是计算器在显示屏上显示的是错误的结果,比如显示结果4,而不是正确结果3。那么,根据第1条规则,这就是一个软件缺陷。

假设,测试员对计算器的键盘随意敲击(猴子测试),发现计算器“死机”了,对任何操作都无响应,那么,根据第2条规则,这就是一个软件缺陷。

假设,测试员发现,计算器在电池电力不足的情况下,会丢失运算处理后显示的结果,那么,根据第3条规则,这就是一个软件缺陷。

假设,测试员发现,计算机除了能够进行加、减、乘、除的数学运算,还能够进行sincos等科学运算,虽然,运算处理的结果是正确的,但是,根据第4条规则,这就是一个软件缺陷。因为,很可能这个计算器就是为小学的学生开发的,而加入这样的科学运算会造成小学生学习混乱。

假设,测试员和最终的用户都认为,计算器的按键太小了、按键间距太密了、按键上的数字和运算符号显示不清晰,那么,根据第5条规则,这些都算是一个软件缺陷。