1.2 测试基础

news/2024/11/10 5:26:33 标签: 软件测试, 质量模型

欢迎大家订阅【软件测试】 专栏,开启你的软件测试学习之旅!

文章目录

  • 前言
  • 1 测试分类
    • 1.1 按生产阶段划分
    • 1.2 按代码可见度划分
    • 1.3 其他测试
  • 2 质量模型


前言

在软件开发过程中,测试是确保产品质量的重要环节。本文详细讲解了软件测试分类以及软件质量模型


本篇文章参考黑马程序员

1 测试分类

1.1 按生产阶段划分

①单元测试
针对最小可测试单元(如函数或方法)进行的测试,通常由开发人员执行,以确保代码的基本功能正常。

②集成测试
将多个单元组合在一起进行测试,主要关注它们之间的接口和交互,确保各模块协调工作。

③系统测试
在系统级别上进行的测试,验证整个应用程序的功能是否符合需求,通常由专门的测试团队进行。

④验收测试
在软件交付给用户前进行的测试,确保软件符合用户需求和业务目标,通常由用户参与。

【例题】
1.张三开发实现完成注册功能,针对自己开发的该功能代码进行测试属于(单元测试)。

2.从注册、登录、下单联动一起的测试属于(集成测试)。

3.项目相关开发人员完成了全部系统的核心业务实现,最后提交给测试全面测试,属于(系统测试)。

4.整个电商系统测试通过后,最后交付给用户正式使用,一般需要完成(验收测试)。

1.2 按代码可见度划分

①黑盒测试
测试者不需要了解内部代码结构,关注输入和输出。

②灰盒测试
测试者部分了解代码实现,结合使用工具和测试用例来验证功能。

③白盒测试
测试者需要深入了解代码,直接对源代码进行测试,以确保逻辑和实现的正确性。

在这里插入图片描述

【例题】
1.无界面,通过工具/代码实现登录功能测试属于(灰盒测试)

2.登录界面输入账号、密码、验证码,点击登录测试属于(黑盒测试)

3.无界面,直接对开发实现的登录功能的源代码进行测试属于(白盒测试)

1.3 其他测试

①冒烟测试
在软件构建后进行的一种初步测试,确保提测内容具备可测性。
在这里插入图片描述

②回归测试
在软件修改后对已测内容再次测试,保证bug修复,确保新改动未影响已有功能。

【注意】
1.原问题已修复,可能引发新bug
在这里插入图片描述
2.与新功能有关联的就功能一定要测试
在这里插入图片描述

2 质量模型

质量模型是用于评估和度量软件产品或系统质量的框架。它通常由一系列维度或属性组成,这里详细介绍以下八个维度:

①功能性
功能性是指软件是否具备必要的能力,能够满足用户的需求。
在这里插入图片描述

②性能
性能涉及软件在多用户同时使用时的表现,包括响应速度和资源占用。
在这里插入图片描述

③兼容性
兼容性是指软件在不同设备和平台上的正常运行能力。
在这里插入图片描述

④易用性
易用性反映了软件的学习成本和用户粘性。
在这里插入图片描述

⑤安全性
安全性关乎敏感数据的存储和传输。
在这里插入图片描述

⑥可靠性
可靠性指软件在长时间运行中的稳定性。
在这里插入图片描述

⑦可移植性
可移植性是指软件系统的升级和数据迁移的便捷性。
在这里插入图片描述

⑧可维护性
可维护性是指在运行过程中出现问题时的维护便利性。
在这里插入图片描述

【例题】
如何验证某系统质量呢?
以微信为例:
1.功能性:与需求数量一致,功能正确
2.性能:响应快、占用资源少
3.兼容性:不同设备平台正常使用
4.易用性:用户体验好
5.安全性:敏感信息无泄密存储有保障
6.可靠性:持久运行无异常
7.可移植性:升级迁移数据不丢失
8.可维护性:出现异常恢复简单、可扩展功能、升级更新便捷


http://www.niftyadmin.cn/n/5666096.html

相关文章

2024/9/19 408大题专训之五段式指令流水线题型总结

结构冒险: 指令步骤:IF(取指令) ID(译码) EX(执行、计算)M(访存)WB(写回) 其中if和m都需要访问主存取指令和数据,如何解决呢?可以把cache分成数据cache指令…

Django ORM(多表)

文章目录 前言一、关联关系模型二、一对多写入数据二、多对多写入数据二、跨表查询1.查找test 标签的文章2.查找作者名为 test 的文章及标签 三、跨表删除 前言 表与表之间的关系可分为以下三种: 一对一: 一对一关系表示一个模型的每个实例与另一个模型的每个实例…

Redis 5.0.4 安装教程

目录 1. 上传并解压 2. 安装 GCC 编译环境 3. 编译 Redis 源代码 4. 安装 Redis(可选) 5. 启动 Redis 6. 配置自定义路径和后台运行(可选) Redis 是一个高性能的键值对存储系统。本文将详细介绍如何在 Linux 系统上安装 Red…

AI开发-三方库

1 需求 2 接口 3 示例 人工智能领域,有几个非常受欢迎的Python库值得推荐‌。 ‌TensorFlow‌:由Google开发的开源深度学习框架,提供了丰富的API和工具,支持多种硬件平台,适合构建和训练复杂的神经网络模型。‌PyTor…

warning:back slash-newline at end of file

#define PRINT(x) \std::printf("log:%s\n", x.c_str()); .h的最后两行如上时,会报warning:back slash-newline at end of file #define PRINT(x) \ 解决办法: 再最后一行后回车,文档末尾增加空白行即可。

开发版本号一些约定

一、约定俗成的规则 版本号命名规则: {soft}_{major}.{minor}.{version}.{date}_{stage}.{sprint} 比如目前1.0的sprint2的发布:csdn_1.0.1.20240919_alpha.2 ps:以上版本对外发布,由软件项目经理控制版本号; soft: …

istio中serviceentry结合vs、dr实现多版本路由

假设有一个外部服务,外部服务ip为:10.10.102.90,其中32033为v1版本,32034为v2版本。 现在需要把这个服务引入到istio中,并且需要配置路由规则,使得header中x-version的值为v1的路由到v1版本,x-…

【C++初阶】vector模拟实现

✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ ✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨ 🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿&#x1…