软件测试入门学习笔记

今天学习新知识,软件测试。 

什么是软件测试?

使用人工和自动手段来运行或测试某个系统的过程,目的在于检验它是否满足规定的需求或弄清实际结果与预期结果之间的差别。

软件测试的目的?

1)为了发现程序(软件)存在的代码或业务逻辑错误(找到Bug)

2)为了检验产品是否符合用户需求(提高质量)

3)为了提高用户的体验

测试分类?

按照测试阶段划分

单元测试:主要测试程序代码,为的是确保各单元模块被正确地编译,比如有具体到模块,类,函数,方法的测试等。一般是由开发人员来完成对代码模块的测试。

集成测试:单元测试后,将各单元组合成完整的体系,测试软件单位之间的接口是否正确,数据能否正常传递,也就是把多个函数或模块组装到一起进行的测试。比如注册和充值这两个功能是否能正常连通。一般也是由开发人员来执行集成测试。

系统测试:把软件系统搭建起来,结合外设,网络等其他元素,按照软件规格说明书中的要求,测试软件的性能、功能等是否与用户需求相符合,在系统中运行是否存在漏洞等。由测试人员根据测试用例进行完整的系统测试。

验收测试:本测试阶段以用户为主,用户对软件进行验收,以确保软件达到符合的效果。

验收测试又分为Alpha测试(先)和Beta测试(后)。

Alpha测试:把用户请到开发方对软件进行的测试,测试环境受开发方控制,测试人员不多且测试时间较集中。执行者:测试人员、用户、公司内部人员。(Alpha测试可理解为软件发布的内测版本)

Beta测试:测试环境不受开发方影响,是真实的测试环境,是真实的用户真实使用的。测试人员广泛,测试时间较分散。执行者:用户。(Beta测试可理解为软件发布的公测版本)

通过Bate测试之后,软件产品基本上就可以确定下来等待正式发布上线。

按照测试技术划分

黑盒测试:只需关注外部的输入与输出,不需要太关注程序内部实现逻辑(不需要查看代码)

举个例子:当我玩一个竞技游戏时,用手指操控人物移动,当我的手指往上移动,人物对应也是往上移动,不需要知道这个人物移动功能是通过什么逻辑来实现。

白盒测试:需要关注程序内部实现逻辑(需要查看代码),不需要太关注外部的输入与输出。

举个例子:也是一个竞技游戏,有一个功能是用户通过手指操控人物移动,那么具体是怎么实现的,用什么代码什么逻辑来实现。

灰盒测试:需要关注外部输入与输出,也需要关注内部具体逻辑实现(两者都需要关注)

按照是否运行被测系统来划分

动态测试:需要运行被测系统而进行的测试。

静态测试:不需要运行被测系统来进行的测试(如界面检查、文档检查、代码找茬等)

按照测试手段划分

手工测试(点点点)

自动化测试(替代手工  利用工具/写脚本)

按照测试内容划分

功能测试:验证软件的业务功能是否符合需求。比如一个聊天软件,在聊天框能正常发送消息,这是一个功能,要对这个功能进行测试。

界面测试:当前被测系统的界面与原型图是否一致。比如一个软件的首页, 跟原型图的颜色、字体、格式、样式等是否一致。

安全测试:对被测系统的安全进行测试。检查是否有一些安全漏洞,例如:对于一个登录界面,用户名和密码输入框是否能过滤对一些特殊字符,是否存在SQL注入的风险等。

兼容性测试:被测系统在不同的测试环境下是否正常。例如(B/S架构的淘宝,用户在使用不同浏览器(ie/chrome/firefox)访问淘宝时,功能是否都能正常使用)

易用性测试:被测系统的各个功能是否操作方便,是否容易理解,是否容易上手等。

性能测试:在某个特殊情况(如用户数量剧增,软件是否还能正常使用);一般会利用一些工具来模拟对人使用的场景来进行测试(负载测试、压力测试等都属于性能测试)

其他测试

冒烟测试:在进行正式测试之前对主要核心功能进行的测试,当基本功能没问题了,再进行后续的测试。

回归测试:开发人员对存在问题的功能进行修改之后,再一次进行的测试,也就是找到Bug之后提交给开发人员,开发修改之后,测试人员再次进行验证。

软件测试基本流程?

需求分析阶段:阅读需求,理解需求,主要是对业务的学习、分析需求点等。

测试计划阶段:主要人物是编写测试计划,参考软件需求规格说明书,以及测试工作的统筹安排,包括测试内容、人员任务分配、测试环境、运用什么测试工具、时间安排等。

测试设计阶段:主要人物是编写测试用例(测试用例:具体如何进行测试的文档)。

测试执行阶段:首先搭建测试环境,执行预测(冒烟测试),以判断当前版本可测与否,若预测通过,则正式就进入系统测试;若发现问题则提交Bug到缺陷管理平台,并对Bug进行跟踪。知道被测软件达到测试需求要求,没有重大Bug,测试结束。

测试评估阶段:出测试报告,对整个测试的过程和版本质量做一个详细的评估,确认是否可以上线

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

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

相关文章

uniapp开发2--uniapp中的条件编译总结

以下是对 uni-app 中条件编译的总结: 概念: 条件编译是一种技术,允许你根据不同的平台或环境,编译不同的代码。 在 uni-app 中,这意味着你可以编写一套代码,然后根据要编译到的平台(例如微信小…

【k8s】sidecar边车容器

一、Sidecar 模式简介 Sidecar 模式是一种常见的微服务架构设计模式。它通过将附加功能或服务与主应用程序部署在同一容器或主机上,从而实现对主应用程序的增强和扩展。Sidecar 的名称来源于摩托车的边车,它与摩托车紧密相连,为主车提供额外…

MySQL索引使用一定有效吗?如何排查索引效果?

MySQL索引使用一定有效吗?如何排查索引效果? 1. 索引一定有效吗? 不一定! 即使你创建了索引,MySQL 也可能因为以下原因 不使用索引 或 索引效果不佳: 索引选择错误:MySQL 优化器可能选择了错…

漏洞管理体系:从扫描评估到修复验证的全生命周期实践

漏洞管理体系:从扫描评估到修复验证的全生命周期实践 在网络安全防御体系中,漏洞管理是“攻防博弈”的核心战场。据NVD(国家漏洞数据库)统计,2023年新增漏洞超21万个,平均每天披露575个,其中32…

cdh平台管理与运维最佳实践

一、容量规划:构建可持续扩展的数据湖底座 1.1 资源评估三维模型 #mermaid-svg-4Fd5JDKTgwqF1BUd {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-4Fd5JDKTgwqF1BUd .error-icon{fill:#552222;}#mermaid-svg-4Fd5J…

力扣347:前K个高频元素

给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums [1,1,1,2,2,3], k 2 输出: [1,2]示例 2: 输入: nums [1], k 1 输出: [1]题解: 一、思路: 1.我希望将nu…

前馈神经网络层

FeedForward Network 论文地址 https://arxiv.org/pdf/1706.03762 前馈网络介绍 前馈网络是Transformer模型中的关键组件,每个Transformer层包含一个多头注意力模块和一个前馈网络模块。该模块通过两次线性变换和激活函数,为模型提供非线性建模能力。其核…

如何将 sNp 文件导入并绘制到 AEDT (HFSS)

导入 sNp 文件 打开您的项目,右键单击 “Result” 绘制结果 导入后,用户可以选择它进行打印。请参阅下面的示例。要点:确保从 Solution 中选择它。

es-核心储存原理介绍

原始数据 idusernamegradedescription1ahua87i like study2xiaowang92i like es3zhaoyun63i like java 倒排索引 description使用的text分词,使用倒排索引 termidi1,2,3like1,2,3study1es2java3 分词后,如果匹配 es,则需要逐行匹配&…

jmeter中监控服务器ServerAgent

插件下载: 将ServerAgent上传至需要监控的服务器,mac/liunx启动startAgent.sh(启动命令:./startAgent.sh) 在jmeter中添加permon监控组件 配置需要监控的服务器IP地址,添加需要监控的资源 注意&#xf…

UML 状态图:以共享汽车系统状态图为例

目录 一、初识 UML 状态图 二、共享汽车系统状态图详解 (一)初始状态与车辆空闲状态 (二)用户预定相关状态 (三)等待取车与用户取车状态 (四)用户还车及后续状态 三、状态图绘…

橙子果品分级-目标检测数据集(包括VOC格式、YOLO格式)

橙子果品分级-目标检测数据集(包括VOC格式、YOLO格式) 数据集: 链接:https://pan.baidu.com/s/1jpdrylu06mm0r9pGVyb-AQ?pwd94a6 提取码: 94a6 数据集信息介绍: 共有 9195 张图像和一一对应的标注文件 标注文件格式…

uniapp 仿企微左边公司切换页

示例代码&#xff1a; <template><view class"container"><!-- 遮罩层 --><view class"mask" v-if"showSidebar" click"closeSidebar"></view><!-- 侧边栏 --><view class"sidebar"…

pyqt中以鼠标所在位置为锚点缩放图片

在编写涉及到图片缩放的pyqt程序时&#xff0c;如果以鼠标为锚点缩放图片&#xff0c;图片上处于鼠标所在位置的点&#xff08;通常也是用户关注的图片上的点&#xff09;不会移动&#xff0c;更不会消失在图片显示区域之外&#xff0c;可以提高用户体验&#xff0c;是一个值得…

巧记英语四级单词 Unit5-中【晓艳老师版】

ignore v.无视&#xff0c;不理睬 发音“一个闹”&#xff0c;对付一个无理取闹的孩子&#xff0c;最好的方式就是无视 不理睬ignorant a.无知的&#xff0c;不礼貌的 对于什么事都无视&#xff0c;中国第一个不平等条约问也不知道就是无知的neglect n.忽视 negative消极的&a…

go 编译的 windows 进程(exe)以管理员权限启动(UAC)

引言 windows 系统&#xff0c;在打开某些 exe 的时候&#xff0c;会弹出“用户账户控制(UAC)”的弹窗 “你要允许来自xx发布者的此应用对你的设备进行更改吗&#xff1f;” UAC&#xff08;User Account Control&#xff0c;用户账户控制&#xff09;是 Windows 操作系统中的…

go.mod介绍

在 Go 项目中&#xff0c;.mod 文件&#xff08;全称 go.mod&#xff09;是 Go 语言模块&#xff08;Module&#xff09;系统的核心配置文件&#xff0c;用于定义和管理项目的依赖关系、模块名称及兼容性规则。以下是其核心作用与结构的详细说明&#xff1a; 一、go.mod 文件的…

基于CATIA参数化管道建模的自动化插件开发实践——NX建模之管道命令的参考与移植

引言 在机械设计领域&#xff0c;CATIA作为行业领先的CAD软件&#xff0c;其强大的参数化建模能力备受青睐。本文介绍如何利用Python的PySide6框架与CATIA二次开发技术&#xff0c;开发一款智能管状体生成工具。该工具借鉴了同类工业软件NX的建模的管道命令&#xff0c;通过Py…

centos7使用yum快速安装最新版本Jenkins-2.462.3

Jenkins支持多种安装方式&#xff1a;yum安装、war包安装、Docker安装等。 官方下载地址&#xff1a;https://www.jenkins.io/zh/download 本次实验使用yum方式安装Jenkins LTS长期支持版&#xff0c;版本为 2.462.3。 一、Jenkins基础环境的安装与配置 1.1&#xff1a;基本…

BiliNote:开源的AI视频笔记生成工具,让知识提取与分享更高效——跨平台自动生成结构化笔记,实现从视频到Markdown的智能转化

引言:视频学习的痛点与BiliNote的解决方案 随着知识视频化趋势的加速,B站、YouTube等平台成为学习与信息获取的重要渠道,但手动记录笔记耗时低效、信息碎片化等问题依然突出。BiliNote的出现,通过AI驱动的自动化流程,将视频内容转化为结构清晰的Markdown笔记,支持截图插…