第12章 软件测试基础(第一部分)概念、质量保证、测试用例、测试执行过程

一、软件测试

(一)定义

  • 动态验证计算机程序对有限的测试用例集是否可产生期望的结果的过程。
  • 测试计划是描述了要进行的测试活动的范围、方法、资源和进度的文档。
  • 编写测试计划目的:使测试工作顺利进行、使项目参与人员沟通更舒畅、使测试工作更加系统化
  • 软件失效是指软件运行时产生的一种不希望或不可接受的外部行为结果。

(二)对象

  • 软件(包括程序、数据、文档、代码)
  • 不包括软件开发人员

(三)目的

  • 保证、提高软件质量
  • 检验软件系统是否满足需求

(四)验证与确认

1、验证 verification

  • 为了看程序是否满足需求规格说明书中的要求
  • 找相关客观证据来证实规定的需求在程序中已经得到满足

2、确认 validation

  • 提供客观证据证明针对某一功能或某一特定应用需求得到满足
  • 检查程序是否有效,能否满足用户预期的用途
  • 软件测试中的确认是保证软件满足用户需求的一系列活动和过程。其目的是证实在一个给定的外部环境中软件的逻辑正确性,检查软件在最终的运行环境上是否达到预期的目标,也就是开发的软件是否与用户需求相符。

3、区别

  • 验证针对需求进行测试
  • 确认针对某一具体功能或某一特定应用需求进行测试
  • 软件测试的验证是保证软件正确实现特定功能的一系列活动和过程,其目的是保证软件生命周期中,每一阶段的成果满足上一阶段所设定的目标。

(五)软件缺陷

1、软件开发阶段

  • 需求分析阶段:40%
  • 设计阶段:30%
  • 编码阶段:30%

2、修复代价

3、缺陷分类属性

属性

4、缺陷优先级

优先级

5、缺陷严重性

严重性

二、测试与质量保证

(一)软件质量

  • 在规定条件下使用时,软件产品满足明确或隐含的要求的能力。

(二)质量保证

  • 管理性活动
  • 软件质量保证就是保证软件产品充分满足消费者要求的质量而进行的有计划、有组织的活动。
  • 它主要的目标包括
    通过预防、检查与改进来保证软件质量
    保证开发出来的软件和软件开发过程符合相应标准与规程
    确保项目组制定的计划、标准和规程适合项目需要,同时满足评审和审计需要等。

(三)软件测试

  • 技术性活动
    两者关系

三、测试用例

(一)测试用例

1、概念

测试用例是 为某个特定目的而开发的 一个 输入、执行条件、预期结果的一个集合。

2、要点

  • 目的性强
  • 包含具体场景
  • 提供判定准则

3、作用

  • 测试实施的依据
  • 体现了测试的方案、方法、技术和策略
  • 保证测试的规范性,提高测试效率
  • 保证测试质量,避免随意性和盲目性
  • 作为软件企业的一类资产

4、内容

GB/T 15532-2008《计算机软件测试规范》

  • 用例标识、说明、环境配置、操作过程、各种条件、评价准则以及建立用例的人员和时间

附加:测试执行过程

测试执行过程阶段

1、初测期

  • 测试主要功能和关键的执行路径,排除主要障碍。

2、细测期

  • 依据测试计划和测试用例,逐一测试大大小小的功能、方方面面的特性、性能、用户界面、兼容性、可用性等等;预期可发现大量不同性质、不同严重程度的错误和问题。

3、回归测试期

  • 系统已达到稳定,在一轮测试中发现的错误已十分有限;复查已知错误的纠正情况,未引发任何新的错误,终结回归测试

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/5795.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面试常见 | 项目上没有亮点,如何包装?

很多技术人在公司用的老技术,而且很多都是搬业务代码且做枯燥乏味的CRUD,在面试提交简历或做自我介绍的时候并不突出,这种情况,如何破局? 首先不管你做的啥项目,全世界不可能只有你自己在做,比…

Tensorflow2.0笔记 - ResNet实践

本笔记记录使用ResNet18网络结构,进行CIFAR100数据集的训练和验证。由于参数较多,训练时间会比较长,因此只跑了10个epoch,准确率还没有提升上去。 import os import time import tensorflow as tf from tensorflow import keras …

附录6-5 黑马优购项目-我的与后端本地化

目录 1 我的 2 后端本地化 1 我的 tarbar我的 只有这两个页面 其中未登录页面中只有一键登录有用,其他都是写死的,一键登录的功能仅仅是切换到登录的页面 目前微信小程序和微信用户的信息是脱钩的(之前的wx.getUserProfile与wx.getUs…

企业气候风险披露、报表词频、文本分析数据集合(2007-2022年)

01、数据介绍 企业气候风险披露是指企业通过一定的方式,将气候变化对其影响、自身采取的应对措施等信息披露出来。这有助于投资者更准确地评估企业价值,发现投资机会,规避投资风险。解企业在气候风险方面的关注度和披露情况。 可以帮助利益…

Django后台项目开发实战七

为后台管理系统换风格 第七阶段 安装皮肤包 pip install django-grappelli 在 setting.py 注册 INSTALLED_APPS [grappelli,django.contrib.admin,django.contrib.auth,django.contrib.contenttypes,django.contrib.sessions,django.contrib.messages,django.contrib.stat…

【yolov8】yolov8剪枝训练流程

yolov8剪枝训练流程 流程: 约束剪枝微调 一、正常训练 yolo train model./weights/yolov8s.pt datayolo_bvn.yaml epochs100 ampFalse projectprun nametrain二、约束训练 2.1 修改YOLOv8代码: ultralytics/yolo/engine/trainer.py 添加内容&#…

R语言4版本安装mvstats(纯新手)

首先下载mvstats.R文件 下载mvstats.R文件点此链接:https://download.csdn.net/download/m0_62110645/89251535 第一种方法 找到mvstats.R的文件安装位置(R语言的工作路径) getwd() 将mvstats.R保存到工作路径 在R中输入命令 source(&qu…

ctf web-部分

** web基础知识 ** *一.反序列化 在PHP中,反序列化通常是指将序列化后的字节转换回原始的PHP对象或数据结构的过程。PHP中的序列化和反序列化通过serialize()和unserialize()函数实现。 1.序列化serialize() 序列化说通俗点就是把一个对象变成可以传输的字符串…

创新指南|如何通过用户研究打造更好的人工智能产品

每个人都对人工智能感到兴奋,但对错过机会 (FOMO) 的恐惧正在驱使公司将人工智能嵌入到每个产品功能中。这可能会导致以技术为中心的方法,从而掩盖产品开发的基本目标:创建真正解决用户问题并满足他们需求的解决方案。本文将介绍通过用户研究…

HawkEye—高效、细粒度的大页管理算法

文章目录 HawkEye—高效、细粒度的大页管理算法1.作者简介2.文章简介与摘要3.简介(1).当时的SOTA系统概述LinuxFreeBSDIngensHawkEye 4.动机(1).地址翻译开销与内存膨胀(2).缺页中断延迟与缺页中断次数(3).多处理器大页面分配(4).如何测算地址翻译开销? 5.设计与实现…

大长案例 - 通用的三方接口调用方案设计

文章目录 引言身份验证防止重复提交数据完整性和加密回调地址安全事件响应可用性 设计方案概述1. API密钥生成2. 接口鉴权3. 回调地址设置4. 接口API设计 权限划分权限划分概述1. 应用ID(AppID)2. 应用公钥(AppKey)【(…

安装VMware Tools报错处理(SP1)

一、添加共享文件 因为没有VMware Tools,所以补丁只能通过共享文件夹进行传输了。直接在虚拟机的浏览器下载的话,自带的IE浏览器太老了,网站打不开,共享文件夹会方便一点,大家也可以用自己的方法,能顺利上…

【Go语言快速上手(六)】管道, 网络编程,反射,用法讲解

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:Go语言专栏⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习更多Go语言知识   🔝🔝 GO快速上手 1. 前言2. 初识管道3. 管…

清新优雅、功能强大的后台管理模板 | 开源日报 No.238

soybeanjs/soybean-admin Stars: 7.0k License: MIT soybean-admin 是一个基于 Vue3、Vite5、TypeScript、Pinia、NaiveUI 和 UnoCSS 的清新优雅且功能强大的后台管理模板。 使用最新流行的技术栈,如 Vue3、Vite5 和 TypeScript。采用清晰的项目架构,易…

Mac M2 本地下载 Xinference

想要在Mac M2 上部署一个本地的模型。看到了Xinference 这个工具 一、Xorbits Inference 是什么 Xorbits Inference(Xinference)是一个性能强大且功能全面的分布式推理框架。可用于大语言模型(LLM),语音识别模型&…

Kubernetes 弃用Docker后 Kubelet切换到Containerd

containerd 是一个高级容器运行时,又名 容器管理器。简单来说,它是一个守护进程,在单个主机上管理完整的容器生命周期:创建、启动、停止容器、拉取和存储镜像、配置挂载、网络等。 containerd 旨在轻松嵌入到更大的系统中。Docke…

screen服务使用解析

一、为什么要使用screen服务 当我们在进行一些常见的远程操作时,通常首先会先进行远程ssh登录 或者telnet连接到远程服务器上,然后执行相关操作,或程序启动等。 1、程序所需的执行时间过长,可能需要挂载几天的那种,可…

Linux(ubuntu)—— 用户管理user 用户组group

一、用户 1.1、查看所有用户 cat /etc/passwd 1.2、新增用户 useradd 命令,我这里用的是2.4的命令。 然后,需要设置密码 passwd student 只有root用户才能用passwd命令设置其他用户的密码,普通用户只能够设置自己的密码 二、组 2.1查看…

基于ROS从零开始构建自主移动机器人:仿真和硬件

书籍:Build Autonomous Mobile Robot from Scratch using ROS:Simulation and Hardware 作者:Rajesh Subramanian 出版:Apress 书籍下载-《基于ROS从零开始构建自主移动机器人:仿真和硬件》您将开始理解自主机器人发…

aic8800 linux

编译方法参考 http://t.csdnimg.cn/epR89 aic8800 源码在 github 里。同样需要 cfg80211 和 mac80211 aic_load_fw/aic_load_fw.ko aic8800_fdrv/aic8800_fdrv.ko都放到放 .ko 的地方 src/USB/driver_fw/drivers/aic8800 就是源码,没有蓝牙的型号不需要aic_btusb …