0
点赞
收藏
分享

微信扫一扫

软件测试概念篇

求索大伟 2022-12-31 阅读 150

目录

1.软件测试

2.需求

2.1 用户需求

2.2 软件需求

2.3 测试人员眼里的需求

2.4 需求的重要性

3.测试用例

3.1 什么是测试用例

3.2 为什么有测试用例

4.BUG

4.1 BUG的概念

4.2 如何描述一个BUG

4.3 如何定义BUG的优先级

4.4 BUG的生命周期

5.软件生命周期

6. 软件开发模型

① 瀑布模型 (Waterfall Model):往往适用于需求非常稳定的项目。

② 螺旋模型(Spiral Model):大型项目,具有一些风险适用于螺旋模型。

③ 迭代、增量模型

④ 敏捷模型

7.软件测试模型

① 软件测试v模型

② 软件测试W模型

8.软件测试生命周期

 


1.软件测试

定义:软件测试就是一系列活动,这些活动是为了评估一个程序或者软件系统的特性或能力,并确定是否达到了预期的效果。

软件测试是一个过程,就是进行一个比较,拿着预期的结果和程序的执行结果作比较。

特点:软件测试只是一个样本试验,具有不可穷尽性。


2.需求

满足用户期望或正式规定文档(合同、标准、规范)所具有的条件和权能,包含用户需求和软件需求。

在大多数软件公司,会有两部分需求,一部分是用户需求,一部分是软件需求。

大多数公司在进行软件开发的时候会把用户需求转化为软件需求,开发人员和测试人员工作的直接依据 就是软件需求。

软件需求是测试人员进行测试工作的基本依据。

用户需求比较简答,软件需求越详细越好。

2.1 用户需求

可以简单理解为甲方提出的需求,如果没有甲方,那么就是终端用户使用产品时必须完成的任务。该需求一般比较简略。

2.2 软件需求

或者叫功能需求,该需求会详细描述开发人员必须实现的软件功能。

2.3 测试人员眼里的需求

需求是测试人员开展软件测试工作的依据。

测试人员以“用户登陆”为例,来阐述下整个过程:

业务需求—>软件功能需求点—>测试需求点—>测试用例

2.4 需求的重要性

从软件功能需求出发,无遗漏的识别出测试需求是至关重要的,这将直接关系到用例的测试覆盖率。

② 对于识别出的每个测试需求点,需要采用具体的设计测试用例的方法来进行测试用例的设计。


3.测试用例

3.1 什么是测试用例

测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。

3.2 为什么有测试用例

执行测试用例的时候,绝大部分的测试点都是参考测试用例执行的。

① 测试用例解决测试人员工作重复性的问题。

② 测试用例可以提高测试人员的效率。

③ 测试用例是自动化的基础。


4.BUG

4.1 BUG的概念

准确的来说:当且仅当规格说明是存在的并且正确,程序与规格说明之间的不匹配才是错误。

当需求规格说明书没有提到的功能,判断标准以最终用户为准:当程序没有实现其最终用户合理预期的功能需求时,就是软件错误。

4.2 如何描述一个BUG

4.3 如何定义BUG的优先级

bug的定义每个公司都不一致,在定义级别之前需要查看公司规范。

① 崩溃(Blocker):阻碍开发或测试工作的问题;造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错 误,主要功能丧失,基本模块缺失等问题。
② 严重(Critical):系统主要功能部分丧失、数据库保存调用错误、用户数据丢失,一级功能菜单不能使用但是不影响其他 功能的测试。功能设计与需求严重不符,模块无法启动或调用,程序重启、自动退出,关联程序间调用 冲突,安全问题、稳定性等。
③ 一般(Major):功能没有完全实现但是不影响使用,功能菜单存在缺陷但不会影响系统稳定性。
④ 次要(Minor):界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案等。

4.4 BUG的生命周期

测试人员应该跟踪一个Bug的整个生命周期,从Open到Closed的所有状态。


5.软件生命周期

软件的生命周期:软件从诞生到不能使用。

软件的生命周期可以分成6个阶段,即需求分析、计划、、设计、编码、测试、运行维护。

6. 软件开发模型

① 瀑布模型 (Waterfall Model):往往适用于需求非常稳定的项目。

瀑布模型在软件工程中占有重要地位,是所有其他模型的基础框架。瀑布模型的每一个阶段都只执行一 次,因此是线性顺序进行的软件开发模式。

② 螺旋模型(Spiral Model):大型项目,具有一些风险适用于螺旋模型。

③ 迭代、增量模型

例如淘宝:登录、注册、搜索、查看商品信息、支付……

迭代:先开发淘宝-登录大概框架,先开发淘宝-注册大概框架,先开发淘宝-搜索大概框架,查看,支付……

增量:先开发登录直到登录开发结束再去开发注册,注册开发结束在进行下一步……

增量:适用于模块和模块之间没有任何关系。

迭代:项目先看到雏形,然后再仔细开发最终实现项目。

④ 敏捷模型

7.软件测试模型

① 软件测试v模型

特点:线性的;左边是开发,右边是测试。

优点:将测试分为了好多种类型。每个阶段要做的工作非常明确。

缺点:测试介入的太晚,测试和开发是串行的。

② 软件测试W模型

 特点:开发一个V,测试一个V。

优点:测试人员尽早介入了需求。开发人员和测试人员并行的。

缺点:测试和开发相应来说也是串行的。不能拥抱变化,不能适用于敏捷。

8.软件测试生命周期

软件测试的生命周期:

需求分析→测试计划→ 测试设计、测试开发→ 测试执行→ 测试评估→维护上线。

举报

相关推荐

0 条评论