前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一文带你快速了解软件测试相关的基础知识!

一文带你快速了解软件测试相关的基础知识!

原创
作者头像
reload
发布2024-04-01 09:45:58
3601
发布2024-04-01 09:45:58
举报
文章被收录于专栏:软件测试软件测试软件测试

任何一款软件或应用在上线之前都必须要经过各种功能,性能等的测试,本篇将带你快速了解软件测试相关的基础知识。

一、概述

1)简单理解,什么是软件?

软件:即控制计算机硬件工作的工具。

2)软件基本组成

3)软件产生过程

4)简单理解,什么是软件测试?

软件测试:即使用技术手段验证软件是否满足使用需求

以用户登录验证为例:

5)软件测试目的

减少软件缺陷(bug),保障软件质量

二、测试主流技能

1、功能测试

功能测试主要验证程序的功能是否满足需求

同样以用户登录为例

2、自动化测试

使用代码或工具代替手工,对项目进行测试

3、接口测试

使用代码或工具对服务端提供的接口进行测试,验证程序中的接口是否访问正常。

4、性能测试

模拟多人使用软件,查找服务器缺陷。

1)工具实现

2)代码实现

5、就业方向选择

1)功能测试+接口测试

2)功能测试+性能测试

3)功能测试+web自动化

当然,多多益善,时间有限的情况下选择上面的一种组合学习即可

三、测试分类

1、按阶段划分

1)单元测试

是指针对程序源代码进行测试。

2)集成测试

又称接口测试,针对模块之间访问地址进行测试。

3)系统测试

对整个系统进行测试包括功能、兼容、文档等测试。

4)验收测试

主要分为内测、公测,使用不同人群来发掘项目缺陷。

2、按代码可见度划分

1)黑盒测试: 不关注源代码,针对程序UI功能进行测试。

对应系统测试(功能测试)

2)灰盒测试: 针对程序部分代码进行测试(接口)

对应集成测试(接口测试)

3)白盒测试: 针对程序源代码进行测试

对应单元测试

注:性能测试归属专项测试,自动化测试归属功能测试

四、软件质量模型

即衡量一个优秀软件的维度

主要衡量指标如下:

功能性、性能、兼容性、易用性、安全性、可靠性、可移植性、可维护性

五、测试流程

1)需求评审

通过需求评审,确保各部门需求理解一致

2)计划编写

决定测什么、谁来测、怎么测

3)用例设计

验证项目是否符合需求的操作文档

4)用例执行

项目模块开发完成,开始执行用例文档实施测试

5)缺陷管理

对缺陷进行管理的过程

6)测试报告

实施测试结果文档

六、测试用例

1、概述

1)用例

即用户使用的案例

2)测试用例

简单理解,就是为测试项目而设计的执行文档

3)测试用例的作用

1、防止漏测

2、实施测试的标准

2、用例编写格式

2.1 示例

注:关于优先级,一般是P0~P4四级。其中P0的优先级最高,正确的能成功的一定是用P0

2.2 各字段详细说明

1)用例编号

书写格式:项目模块编号,如 qq_login_001

2)用例标题

预期结果(测试点)

3)模块/项目

所属项目或模块

4)优先级

表示用例的重要程度或者影响力P0~P4(P0最高)

5)前置条件

要执行此条用例,有哪些前置操作

6)测试步骤

描述操作步骤

7)测试数据

操作的数据,如果没有可以为空

8)预期结果

期望达到的结果

3、入门案例

根据如下QQ登录需求编写测试用例

测试用例如下

七、用例设计方法

1、等价类划分法

1.1 概述

1)概念

是指在所有测试数据中,对具有某种共同特征的数据集合进行划分。

2)分类

1、有效等价类: 满足需求的数据集合

2、无效等价类: 不满足需求的数据集合

3)步骤

1、明确需求

2、确定有效和无效等价类

3、提取数据编写测试用例

1.2 案例1

1)需求

验证QQ账号的合法性,要求: 6~10位自然数(长度+类型)

2)分析

3)编写用例结果

注意优先级:合法为P0,不合法这里都设置为P1

1.3 案例2

1)需求

验证某城市电话号码正确性

要求:(长度+类型+规则)

1、区号: 或者是三位数字

2、前缀码: 非“0”且非“1”开头三位数字

3、后缀码: 四位数字

2)分析

关于正向和逆向,简单理解,正向即符合要求;逆向即不符合要求。

1、正向: 一次尽可能将多个正确数据组合

2、逆向(错误): 一次只能覆盖一个

由上可以看出,正向的往往需要将多种情况组合考虑;而逆向的不用,因为有一个不满足的情况就算一条。

3)编写用例结果

根据上述分析编写用例,如下给出的是两条合法的用例;照猫画虎,自行补充剩余8条不合法的。

1.4 适用场景

主要是针对需要有大量数据测试输入,但是没法穷举测试的场景。如输入框、下拉列表、单选复选框等。

典型代表: 页面的输入框类测试。

2、边界值分析法

解决边界限制如何测试的问题

2.1 概述

1)边界范围节点

选取正好等于、刚好大于、刚好小于边界的值作为测试数据

1、上点: 边界上的点(正好等于)

2、离点: 距离上点最近的点(刚好大于、刚好小于)

3、内点: 范围内的点(区间范围内的数据)

注:上点不带小数,则离点也不带小数;一般情况下内点选居中的点

2)步骤

1、明确需求

2、确定有效和无效等价类

3、确定边界范围值

4、提取数据编写测试用例

3)优化

之前我们说测试点最多有7个,但其实可以优化到5个。

3.1)原则如下:

上点: 必选(不考虑区间开闭)

内点: 必选(建议选择中间范围)

离点: 开内闭外(考虑开闭区间,开区间选择内部离点,闭区间选择外部离点)

优化离点,理解“开内闭外”原则

10<a<=20 -->使用开闭区间表达: (10,20]

开区间指的是区间边界的两个值不包括在内,如(a,b)

闭区间指的是区间边界的两个值包括在内,如a,b

同理半开闭(左开右闭,左闭右开)

2.2 示例

需求:20<=b<60

则选取的测试点为:

上点:20,60

内点:30

离点:19,59

关于离点,“开内闭外”原则其实很好理解。如上20为闭,60为开,如果测试20通过了,就没有必要测试21,因为没有意义(闭外)。同理,如果测试60发现不通过,就没有必要测试61,因为没有意义(开内

如果需求改为:20<=b<=60,同理分析

总结:5个点必测(上点2个,内点1个,离点开内闭外2个)

为什么内点必须测?

答:验证范围的连续性

练习(开内闭外)

[10,50) -->测试点为:10,50,35,9,49

(30,50) -->测试点为:30,50,40,31,49

(12,80] -->测试点为:12,80,50,13,81

2.3 适用场景

1)在等价类的基础上针对有边界范围的测试数据输入的地方(重点关注边界)

2)常见词语描述: 大小、尺寸、重量、最大、最小、至多、至少等修饰词语

3)典型代表: 有边界范围的输入框类测试

3、判定表法

解决多条件限制依赖关系如何测试的问题

3.1 判定表法的引用

1)案例: 验证“若用户欠费或者关机,则不允许主被叫”功能的测试

2)说明:

  • 等价类边界值分析法主要关注单个输入类条件的测试
  • 并未考虑输入条件之间的各种组合、输入条件与输出结果之间有相互制约关系的测试。
3.2 判定表定义及组成部分

上述案例的测试用例

3.3 案例2

1)案例及分析

2)编写测试用例

4、场景法

解决覆盖业务场景测试的问题

4.1 概述

1)定义

场景法又称流程图法,是用流程图描述用户的使用场景,然后通过覆盖流程路径来设计测试用例。

2)意义

用户使用角度

用户平时使用的不是单个功能,而是多个功能组合起来进行使用

测试人员角度

平时测试的都是单个功能点进行测试,容易忽略多个功能的组合测试

3)案例:ATM取款流程

注:冒烟测试,是指在批量开始测试之前,执行业务正向用例,验证软件是否具备可测性。冒烟测试的目的:避免由于项目不具备可测性,而投入的时间和人力成本

5、错误推荐法

5.1 定义

通过经验推测系统可能出现的问题

5.2 思想

根据经验列举出可能出现问题的清单,根据清单分析问题可能原因,推测发现缺陷

5.3 场景

1、时间紧任务量大时,根据之前项目类似经验找出易出错的模块重点测试

2、时间宽裕通过该方法列出之前出现问题较多的模块再次测试

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、概述
  • 二、测试主流技能
    • 1、功能测试
      • 2、自动化测试
        • 3、接口测试
          • 4、性能测试
            • 5、就业方向选择
            • 三、测试分类
              • 1、按阶段划分
                • 2、按代码可见度划分
                • 四、软件质量模型
                • 五、测试流程
                • 六、测试用例
                  • 1、概述
                    • 2、用例编写格式
                      • 2.1 示例
                      • 2.2 各字段详细说明
                    • 3、入门案例
                    • 七、用例设计方法
                      • 1、等价类划分法
                        • 1.1 概述
                        • 1.2 案例1
                        • 1.3 案例2
                        • 1.4 适用场景
                      • 2、边界值分析法
                        • 2.1 概述
                        • 2.2 示例
                        • 2.3 适用场景
                      • 3、判定表法
                        • 3.1 判定表法的引用
                        • 3.2 判定表定义及组成部分
                        • 3.3 案例2
                      • 4、场景法
                        • 4.1 概述
                      • 5、错误推荐法
                        • 5.1 定义
                        • 5.2 思想
                        • 5.3 场景
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档