测试的概念

news2024/9/21 20:40:39

测试职责

需求分析
测试分析
设计测试用例
执行测试用例
掌握自动化测试技术
验证产品是否实现了应该实现的功能,或者实现了不应该实现的功能


在整个软件生命周期中,测试是一个贯穿始终的过程,它包含了不同阶段和不同类型的测试,以此来保证软件工程的稳定性和可靠性

  1. 需求分析阶段:在需求分析阶段,测试团队与业务分析师和项目团队一起参与,帮助理解用户需求,并在需求规格中定义测试用例和测试计划。
    测试团队通过提出测试相关的问题和需求细化,确保需求的准确性和可测试性。

  2. 设计和规划阶段:在软件设计和规划阶段,测试团队参与软件设计评审,检查设计文档的可测试性和质量,以便在开发之前预防潜在的问题。

  3. 开发阶段:在开发阶段,测试团队通常设计测试用例,执行单元测试和集成测试。
    单元测试是针对单个功能模块的测试.
    而集成测试是验证模块之间的协作和接口是否正常工作。

  4. 系统测试阶段:系统测试是在开发完成后进行的整体测试,测试整个软件系统是否符合规格和用户需求。包括功能测试、性能测试、安全测试等多种测试类型。

  5. 用户验收阶段:在用户验收阶段,测试团队协助用户执行验收测试,以确保软件满足用户的期望和需求。
    用户验收测试是确认软件是否可以正式交付使用的最后一道关卡。

  6. 部署和维护阶段:在软件部署和维护阶段,测试团队可能需要进行回归测试,以确保软件在更新和修复后仍然稳定和可靠。
    在部署后还会进行自动化测试,保证线上功能的正确运行

在这里插入图片描述

测试和开发的区别

相比较而言
测试的广度大,深度浅
开发深度高,广度小

测试和调试的区别

目的:

  • 测试的主要目的是发现问题,验证软件是否符合预期的功能和质量要求。测试人员通常没有业务代码的权限,因为他们的任务是独立于开发人员,专注于检查软件的正确性和稳定性。
  • 调试的主要目的是发现和修复代码中的问题,通常由开发人员执行。调试主要发生在编码阶段,旨在识别并解决程序中的错误。

人员:

  • 测试阶段的人员包括测试人员和开发人员。测试人员负责执行各种测试,检查软件的功能和性能。开发人员可能会协助测试人员理解代码,但他们不直接进行测试。
  • 调试阶段的人员主要是开发人员。调试是在编码阶段进行的,开发人员负责识别和修复代码中的问题,确保代码的正确性。

阶段:

  • 测试阶段是整个业务生命周期的一个重要组成部分。测试在不同的阶段,如单元测试、集成测试、系统测试和用户验收测试中进行,确保软件在各个阶段都能达到预期的质量标准。
  • 调试阶段是在编码阶段进行的,主要是开发人员在编写代码的过程中,通过查找问题并进行修复,确保代码的正确性和稳定性。

角色:

  • 测试阶段中,测试人员负责执行测试计划,收集和报告问题,验证软件是否满足要求。开发人员也可能参与测试活动,但他们的主要职责是修复发现的问题。
  • 在调试阶段,主要角色是开发人员,他们负责调查和解决代码中的错误,确保代码在编码阶段就达到高质量水平。

测试和调试虽然都是发现问题的过程,但目的、人员和阶段都不同。测试是整个业务生命周期的一部分,执行测试活动的主要是测试人员,而调试主要发生在编码阶段,由开发人员执行。

走测试为什么还要干开发知识?

测试人员也需要进行代码编写
提高测试质量
测开:开发能效工具,提升测试质量和效率
学习开发知识,可以更好的站在开发角度思考问题,知己知彼才能事半功倍

为什么不走开发?

个人兴趣
对于测试的理解
开发辅助测试

需求

用户需求
一般是甲方需求
精确的软件描述,去除二致性,达到一致性

软件需求
功能需求,详细描述开发人员实现的软件功能

测试用例(Test Case)

标题

简明扼要的标题,描述测试的目标和被测功能

测试环境

描述测试用例所需要的测试环境,包括硬件设备,操作系统,网络环境,软件环境

操作步骤

列出执行测试用例的详细步骤,包括启动应用程序、点击按钮、输入数据等

测试数据

指定输入测试用例所需的数据,如输入字段的值、文件的内容等。

预期结果

描述在执行测试用例后所期望的系统行为或输出。预期结果应该与需求文档进行比较,以判断测试用例是否通过。

Bug

当且仅当需求文档存在且正确
程序的实现和规格与需求文档不匹配的时候
就是Bug

产品的生命周期

需求分析

市场分析,分析投入和收益的占比
技术分析
成本分析

计划

什么时候开始
中间有什么阶段
什么时候结束
耗时多久

设计

把一个大的需求拆分成一个一个任务
需要哪些技术

编码

开发人员根据需求文档和技术文档进行开发

执行测试

测试人员使用测试用例进行测试

运行维护

修复性维护:对项目中的问题进行及时修复
完善性维护:对功能进行完善
预防性维护:为了避免项目在运行过程中出现失误,进行预防措施

测试中的问题

项目测试完成后要进行项目的上线
上线后需要测试人员及时关注线上产品运行情况
如果出现问题

1.尝试复现问题(普遍还是特殊问题)
复习成功后通知项目组成员进行问题的定位
2.尝试定位问题出现的原因,帮助开发人员尽快定位问题并解决


哈,谢谢各位同志的阅读,然后呢如果觉得本文对您有所帮助的话,还给个免费的赞捏

Thanks♪(・ω・)ノ

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

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

相关文章

金融翻译难吗,如何做好金融翻译?

我们知道,金融翻译涉及企业经济这块的,是影响各公司发展很重要的一方面,翻译做得好,可以促进公司内外的交流,及时掌握各种信息,做好应对。那么,金融翻译难吗,如何做好金融翻译&#…

第五章 Opencv图像处理框架实战 5-3 图像阈值与平滑处理

图像阈值 ret, dst cv2.threshold(src, thresh, maxval, type) src: 输入图,只能输入单通道图像,通常来说为灰度图 dst: 输出图 thresh: 阈值 maxval: 当像素值超过了阈值(或者小于阈值&am…

【C进阶】回调函数(指针进阶2,详解,小白必看)

目录 6. 函数指针数组 6.1简单计算器 6.2函数指针数组实现计算器 7. 指向函数指针数组的指针(仅作了解即可) 8.回调函数 8.1关于回调函数的理解​编辑 8.1.1用回调函数改良简单计算器 8.2qsort库函数的使用 8.2.1冒泡排序 8.2.2qsort的概念 8.3冒泡排序思想实现qsor…

数据结构--基础知识

数据结构是什么? 数据结构是计算机科学中研究数据组织、存储和管理的方法和原则。它涉及存储和操作数据的方式,以便能够高效地使用和访问数据。 相关内容 基本组成 数组(Array):数组是一种线性数据结构,…

MySql005——使用SQL创建数据库和表

在《MySql000——MySql数据库的下载、安装以及使用图形化工具创建数据库和表》中,我们使用图形化工具MySQL Workbench创建数据库和表,下面我们将使用SQL来实现这一过程 一、数据库操作 1.1、创建数据库 1.1.1、创建MySQL数据库通用写法 使用 create 命…

ts一些常用符号

非空断言操作符(!) 具体是指在上下文中当类型检查器无法断定类型时,一个新的后缀表达式操作符 ! 可以用于断言操作对象是非 null 和非 undefined 类型。具体而言,x! 将从 x 值域中排除 null 和 undefined 。 1. 赋值时忽略 undefined 和 null function…

Simulink仿真模块 - Saturation Dynamic

Saturation Dynamic将输入信号限制在动态饱和上界和下界值之间 在仿真库中的位置为:Simulink / Discontinuities 模型为: 说明 Saturation Dynamic 模块产生输出信号,该信号是以来自输入端口 up 和 lo 的饱和值为界的输入信号的值。 输入输…

【已解决】windows7添加打印机报错:加载Tcp Mib库时的错误,无法加载标准TCP/IP端口的向导页

windows7 添加打印机的时候,输入完打印机的IP地址后,点击下一步,报错: 加载Tcp Mib库时的错误,无法加载标准TCP/IP端口的向导页 解决办法: 复制以下的代码到新建文本文档.txt中,然后修改文本文…

PHP+mysql鲜花销售商城网站html5在线鲜花花店购物订购系统

花店订购管理系统,是基于php编程语言,mysql数据库开发,本系统分为用户和管理员两个角色,其中用户可以注册登陆系统,查看分类,搜索鲜花,查看鲜花详情,加入购物车,生成订单…

【MySQL】模具数据转移处理

系列文章 C#底层库–MySQLBuilder脚本构建类(select、insert、update、in、带条件的SQL自动生成) 本文链接:https://blog.csdn.net/youcheng_ge/article/details/129179216 C#底层库–MySQL数据库操作辅助类(推荐阅读&#xff0…

【phaser微信抖音小游戏开发002】hello world!

执行效果: 将以下代码文本内容,放入到game.js中即可。目录结构如下图 import ./js/libs/weapp-adapter import ./js/libs/symbolGameGlobal.window.scrollTo () > { };//防止真机出错 import Phaser from ./js/phaser//引入Phaservar {windowWidth, …

9条建议告诉你如何正确处理PCB设计布线

一、关于PCB布线线宽 1、布线首先应满足工厂加工能力,首先向客户确认生产厂家,确认其生产能力,如图1所示。如客户无要求,线宽参考阻抗设计模板。 图1 PCB板厂线宽要求 2、阻抗模板,根据客户提供的板厚及层数要求&…

vue中使用axios发送请求时,后端同一个session获取不到值

问题描述: 在登录页面加载完成后通过axios请求后端验证码接口(这时后端会生成一个session用于保存验证码数值),当输入完用户名、密码、验证码后请求登录接口,报错验证码输入错误,打印后端保存验证码的sessi…

C1. Dual (Easy Version)(正负号转换)

题目:Problem - C1 - Codeforces 总结: 首先:对于全正数和全负数的数组求非减序列构造很是简单 紧接着:对于有正有负的数组可以将其转化为统一符号 最后符号统一方案: 找出绝对值最大的数并将每个数都将加上该绝对…

SSM电影推荐系统【纯干货分享,免费领源码03073】

目 录 摘 要 Abstract 第1章 前 言 1.1 研究背景 1.2 研究现状 1.3 系统开发目标 第2章 技术与原理 2.1 开发技术 2 2.2 ssm框架介绍 2 2.3 MySQL数据库 2 2.4 B/S结构 2 第3章 需求分析 3.1 需求分析 3.2 系统可行性分析 3.3 项目设计目标与原则 3.4…

添加IP白名单的方法,你知道几个?

在各种网络操作中,不同网站和服务可能会对来源IP地址进行限制,为了正常访问,我们需要将自己的IP地址添加到白名单中。本文将为您详细介绍添加IP白名单的几种方法以及它们之间的优劣比较,同时分享可能遇到的问题和解决方案。 方法…

mac 下用brew快速安装CommandLineTools

有时候用git 就会提示安装CommandLineTools ,xcode太大又不想安装,怎么办呢我们可以试下下面的方式 什么是Brew: Brew是Mac OS X下的一个包管理器,可以方便地安装、升级和卸载很多常用的软件包 在mac下如何安装呢: …

linux网卡命名规则

Consistent Network Device Naming Linux provides methods for consistent(一致) and predictable(可预测) network device naming for network interfaces. These features change the name of network interfaces on a system in order to make locating and different…

Java8实战-总结9

Java8实战-总结9 Lambda表达式把Lambda付诸实践:环绕执行模式第1步:记得行为参数化第2步:使用函数式接口来传递行为第3步:执行一个行为第4步:传递Lambda 使用函数式接口PredicateConsumerFunction原始类型特化 Lambda表…

mybatis plus 的一些使用

简介 官网:http://mp.baomidou.com/ 参考教程:https://baomidou.com/pages/24112f/ MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 …