软件测试 理论

article/2025/9/23 10:48:37

1.按阶段对测试分类

 1.1 单元测试(单元:一个独立的功能模块)

针对程序的源代码进行测试(交付程序之前自己自测一下)、

bug 太多,修复率太低,耗时的时候必须要单元测试

1.2 集成测试(接口测试,针对模块之间的访问来测试)

1.3 系统测试

我们把整个系统,整个软件组装起来之后,再去做一个验证测试。

因为单个模块或者两个模块测得没问题,真正组装成一个系统就有问题。

 整体测:需求说明书,兼容性,什么软件各种说明书也要测。

1.4 验收测试(内测,公测)

比如说游戏,测试人员站在功能得专业角度已经测得没问题了。

需要不同得人群来测试,而不是直接上线。

这个时候,找一个用户内测,就能发现一些不同视角得bug。

2.对代码的可见度进行划分

2.1 黑盒测试(源代码不可见)

2.2 白盒测试(源代码可见)单元测试

2.3 灰盒测试(部分源代码可见)也是集成,接口测试。

部分源代码是可见的

3.质量模型

3.1 功能性

 3.2 性能

 3.3 兼容性

你的app和其他的应用兼容吗?

 3.4 易用性

3.5 可靠性

出现无响应,卡顿,死机

 3.6 安全性

传输是否加密,存储是否加密。

3.7 可移植性 

服务器里的数据实在是太多了,所以需要考虑把数据搬到性能更好的服务器上。

如果你的软件 不好移动,就很难受。

基本上两三年都要换一下服务器。

4.测试流程

 5.用例和测试用例

测试用例:为了测项目而设计的执行文档。

测试用例作用:防止漏测

5.1 测试用例格式

核心功能:用户使用最频繁的功能。

用例标题:结果(原因)

 

6. 场景问题

 

6.1 等价类划分法(解决穷举场景)

有效等价类:满足需求的数据集合。一个

无效等价类:不满足需求的数据集合。可以两个

步骤:

  1. 先确定根据什么需求来划分等价类,按年龄还是按性别?
  2. 确定有效等价类和无效等价类
  3. 提取数据编写测试用例

6.1.1 验证qq账号合法性的案例

例如:需求里要求是6-10位自然数。

 

 

如果要求 qq的输入类型必须得是自然数,那还得考虑 8位 非自然数的情况,还有特殊的情况就是空。

 

 

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

 

 

测试用例部分如下:

6.2 边界值分析法(用边界值来划分等价类)

 因为开发可能把>号写成了 >=号。

 6.2.1 边界值分析设计测试用例

6.3 验证标题长度的合法性

 

 6.4 边界值法分析qq的合法性

等价类用来划分类型,边界值用来划分范围,结合使用

 6.4.1 边界值优化

其实7个点可以优化成 5个点。

-98 ,98 其实和 50是一个性质的。

6.4.2 适用场景

6.5 判定表法(多条件依赖问题,四个条件以内)

这就相当于,叫或者不叫这个功能,有前置条件的依赖。

n个条件就最多有2的n次方个项。

 6.5.1 适用于场景

 条件最好少于4个以内,如果条件多了,可以考虑正交法或者因果图。

 6.5.2 订购单检查

 

 

6.5.3 案例2

先写条件,然后写反应的动作。动作会根据条件的不同而不同。

 

6.6 场景法(业务覆盖测试)

对于京东,淘宝这种电商项目,业务执行功能很重要。

先测试业务,再测试单个功能和模块。

6.6.1 我们需要业务的流程图

因为业务的逻辑是根据流程图来梳理的。

 

用viso画流程图。

 

6.6.2 ER图(不用,了解一下)

ER图就是实体之间的关系。

6.7 业务测试(ATM机取款案列)

 看流程图有多少条 能走向结束的路径,按个测试这些路径。

 

举例子,改前置条件即可。

7.错误推测法(根据经验)

1.时间紧任务重的时候,根据经验判断。

2.放眼于之前测试多出现问题的模块。

8.缺陷(bug)

文字和描述也可以是缺陷。

少功能,功能错,功能多,隐性功能错误,不易使用。

 

8.1 缺陷出现的四个阶段

需求阶段:需求不好理解或者有歧义,理解错误。

设计阶段:设计文档出存在错误或缺陷。

编码阶段:代码出现错误。

运行阶段:软硬件本身故障,导致软件缺陷。

8.2 缺陷类型

功能错误,UI页面错误,兼容性,数据错误,易用性,架构缺陷。

8.3 描述缺陷(跟用例描述一样)

执行完测试用例,没通过的就要进行缺陷管理。

8.4 缺陷管理工具禅道(工具,用于产品管理,项目管理,质量管理)

 

进入软件,点提交bug。

 


http://chatgpt.dhexx.cn/article/7BRcoQIn.shtml

相关文章

05测试理论

测试理论 一、软件相关知识1、什么是软件2、软件生命周期3、测试流程(重点)4、项目组成员5、软件研发模型(软件研发过程)6、BUG类型 二、测试基础1、什么是软件测试2、软件测试目的3、软件测试原则(经验) 三…

测试理论基础

测试基础 1.软件测试的概念 软件测试(Software testing):是一种实际输出与预期输出间的审核或者比较过程。 经典定义:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要…

测试理论----测试设计方法论

【原文链接】 1、测试用例格式 (1)用例编号:用例的唯一标识,要求具有易识别性和易维护性,能能够根据用例编号识别用例的目的和作用,一般格式为:A-B-C-D 其中 A:一般表示产品或者项…

测试基础理论

一,理清测试相关概念 1,质量 : 实体特性的总和,满足明确或隐含要求的能力 2,软件质量 :软件特性的总和,软件满足规定或潜在用户需求的能力 在1991年软件产品质量评价,国标标准ISO9126中定义是:软件满足规定或潜在用户需求特性的总和。 …

【软件测试】软件测试基础理论

软件测试基础理论 黑盒测试、白盒测试、灰盒测试 (1)黑盒测试 黑盒测试 又叫 功能测试、数据驱动测试 或 基于需求规格说明书的功能测试。该类测试注重于测试软件的功能性需求。 采用这种测试方法,测试工程师把测试对象看作一个黑盒子&…

软件测试 - 功能测试(测试理论+用例设计)

一、测试理论基础 1.软件的定义 软件:是计算机程序、程序所用的数据以及有关文档资料的集合 软件分为 系统软件 和 应用软件 系统软件:是生成、准备和执行其他程序所需要的一组文件和程序,比如:操作系统 应用软件:计…

测试理论概述

一、测试基础 1、什么是测试? 弄清楚产品实际功能与需求的差别的过程。 2、软件测试的目的: 根本目的是检验产品是否满足用户的需求。除此之外,可细分为三个层面: (1)证明:证明软件可用 (2)检测:发现缺陷&…

测试理论总结(一)

1.你是如何把控、推进测试流程的? 首先,测试之前,我会做好测试计划、测试人力分配、工作量的估算、测试策略、测试风险评估等;其次,测试中,我会尽量严格按照测试计划来执行,如果实际测试中出现…

超详细的测试理论基础知识

测试理论基础知识 文章目录 一、软件的定义与分类1、软件定义2、软件分类(1)按照功能划分(2)按照技术架构划分 二、软件测试的定义及目的1、定义:2、目的 三、软件测试流程四、V模型(重点)1、软…

测试基本理论-看这篇就够了

软件测试(Software Testing):在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 一、软件的分类? 1、按照功能划分: 【系统软件】:如操作…

测试理论基础(重点)

软件测试的原则 1. 只能证明软件存在问题,不能把证明不存在问题 2. 不能进行穷尽测试,应该分类别测试 3. 测试工作尽早介入,降低修复成本 4. 缺陷存在集群现象,二八原则:20%的模块中存在80%的缺陷 5. 测试依赖环境 6.…

sql左连接出现重复数据

情况说明:只需左表数据,右表数据只作为条件存在,左表数据与右边有1:n关系,左连接出现重复数据 原因分析:由于1:n关系,右边数据连接后处于隐藏状态(类似)&…

sql 左连接数据出现重复

数据出现数据重复问题,排查后发现竟然是,这里用简单demo举例,项目SQL不便展出~ 目录 一、简化举例 二、查询结果 一、简化举例 1、表aa 2、表bb 二、查询结果 1、无条件查询 2、左连接查询 右表数据有重复时,连接关系如下 111122 …

sql 左连接行数增加本质

sql 左,右,内连接 转载自:http://323229113.blog.163.com/blog/static/2185362820070172553209/ 感谢作者. 相信做数据分析的朋友,对数据库都比较敏感,作为一名数据分析人员,我们处理数据时总会遇见各种各样的问题,包括连接方式的选择,今天和大家分享一下…

SQL(左连接,右连接,内连接)

连接(Join):SQL语句采用JOIN的目的是关联两张及两张以上的表。 连接的使用方式:表1 Join 表2 On 关联条件 1 左连接(Left Join) 左连接(Left Join):多表拼接时,以左边的表为基准&a…

SQL语句理解左右连接和where

这里以左连接 left join 为例,说明 on 后面的条件与 where 后面条件的区别 创建测试表:TAB_1、TAB_2 create table TAB_1 as (select c as A,d as B,3 as C,4 as D from dualunion allselect a as A,b as B,1 as C,2 as D from dual); create table TA…

sql的内连接、左连接、右连接

多表联查时,有些数据没有对应另一个表的数据,即对应为空。 內连接:仅选出两张表中互相匹配的记录,有对应为空的则筛选出去,这些数据就不会被搜索出来。内连接是两个表中都必须有连接字段的对应值的记录,数…

SQL Server左连接

LEFT JOIN 子句用于查询来自多个表的数据。它返回左表中的所有行和右表中的匹配行。 如果在右表中找不到匹配的行,则使用 NULL 代替显示。 以下图说明了两个结果集的左连接结果: 以下说明如何使用 LEFT JOIN 子句来连接两个表 T1 和 T2 : 在…

SQLserver 外连接查询-左连接查询

外连接包括 : (左外连接 右外连接 全连接 简称 为:左连接 右) 先上定义: /*左连接 left join on 返回左表的所有行,对应右表中数据有一对多的联系,则全部展示,右表中没有匹配 上 &am…

SQL左连接数据变少

前一段时间,同学写sql碰到一个问题:两段sql连接看似一样,但是条数却不一样。原因是在左连接之后的where条件对数据进行了筛选,使得数据变少了。两段sql如下: select count(1)from (select *from KXAPP.I_CASH_LOAN_WH…