热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

白盒测试还流行吗_转行软件测试,错过这篇依旧是小白

善变的狐狸:软件测试新人转行小白必看​zhuanlan.zhihu.com接上篇软件测试的基本流程1需求分析阶段:只要就是对业务(什么业务
2839f1f11ef37c61520efa400bb9a173.png
善变的狐狸:软件测试新人转行小白必看​zhuanlan.zhihu.com
093a49feb5b07e6c5888382544134c61.png

接上篇

软件测试的基本流程

1 需求分析阶段:

只要就是对业务(什么业务???)的学习,分析需求点。

2 测试计划阶段:

测试组长就要根据项目需求开始编写《测试计划》,其中包括人员,软件硬件资源,测

试点&#xff0c;集成顺序&#xff0c;进度安排和风险识别等内容&#xff08;大体理解如下<测试计划主要是对各种资源

进行调配&#xff08;资源种类有&#xff0c;人力、财力、物力、&#xff09;合理的规划布置任务。>&#xff09;。

3 测试设计阶段&#xff1a;

测试方案一般由对需求很熟的高资深的测试工程师设计&#xff0c;测试方案要求根据需求文档上

的每个需求点设计出包括需求点简介&#xff0c;测试思路和详细测试方法三部分的方案。《测试方案》

&#xff08;测试设计是测试方案吗&#xff1f;&#xff1f;&#xff09;编写完成后也需要进行评审。

4 测试方案阶段&#xff1a; 主要是对测试用例和规程的设计。测试用例是根据《测试方案》来编写&#xff0c;通过《测试

方案》阶段&#xff0c;测试人员对整个系统需求有了详细的理解。这时开始编写用例才能保证用例的

可执行和对需求的覆盖。测试用例需要包括测试项&#xff0c;用例级别&#xff0c;预置条件&#xff0c;操作步骤和预期

结果。其中操作步骤和预期结果需要编写详细和明确。测试用例应该覆盖测试方案&#xff08;个人理

解测试方案是指各种测试方法吗比如黑盒测试中的等价类划分法还是说里面包含了测试方

法&#xff0c;他们之间是什么关系&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff09;&#xff0c;而测试方案又覆盖了测试需求点&#xff0c;这样才能保证客户

需求不遗漏。同样&#xff0c;测试用例也需要评审。

5 测试执行阶段&#xff1a;

执行测试用例&#xff0c;及时提交有质量的 Bug 和测试日报&#xff0c;测试报告等相关文档。&#xff08;测试计

划&#xff09;

2、软件测试分为哪些方式&#xff1f;

1、软件测试的分类

按阶段分&#xff1a;单元测试、集成测试、系统测试、验收测试

按是否运行程序分&#xff1a;静态测试、动态测试

按内部结构&#xff08;是否查看代码&#xff09;分&#xff1a;黑盒测试、灰盒测试、黑盒测试

按性能分&#xff1a;功能测试、性能测试

其他测试&#xff1a;回归测试、冒烟测试、随机测试、压力测试、负载测试、

3、各分类的介绍

1 单元测试&#xff1a;

是指对软件中的最小可测试单元进行检查和验证。单元测试是在软件开发过程中要进行

的最低级别的测试活动&#xff0c;软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。

2 集成测试&#xff1a; 也叫组装测试或联合测试。在单元测试的基础上&#xff0c;将所有模块按照设计要求&#xff08;如根据结

构图&#xff09;组装成为子系统或系统&#xff0c;进行集成测试。实践表明&#xff0c;一些模块虽然能够单独地工作&#xff0c;

但并不能保证连接起来也能正常的工作。一些局部反映不出来的问题&#xff0c;在全局上很可能暴露

出来。

3 系统测试&#xff1a;

是针对整个产品系统进行的测试&#xff0c;目的是验证系统是否满足了需求规格的定义&#xff0c;找出与

需求规格不符或与之矛盾的地方&#xff0c;从而提出更加完善的方案。

软件测试人员主要在这一个阶段执行测试

4 验收测试&#xff1a;

在软件产品完成了单元测试、集成测试和系统测试之后&#xff0c;产品发布之前所进行的软件测

试活动。它是技术测试的最后一个阶段&#xff0c;也称为交付测试。验收测试的目的是确保软件准备

就绪&#xff0c;并且可以让最终用户将其用于执行软件的既定功能和任务。

5 静态测试&#xff1a;

是指不运行被测程序本身&#xff0c;仅通过分析或检查源程序的语法、结构、过程、接口等来检

查程序的正确性。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、

符号执行来找错。

6 动态测试&#xff1a;

是指通过运行被测程序&#xff0c;检查运行结果与预期结果的差异&#xff0c;并分析运行效率、正确性和

健壮性等性能。这种方法由三部分组成&#xff1a;构造测试用例、执行程序、分析程序的输出结果。

7 黑盒测试&#xff1a;

黑盒测试也称功能测试或数据驱动测试&#xff0c;它是在已知产品所应具有的功能&#xff0c;通过测试来

检测每个功能是否都能正常使用&#xff0c;在测试时&#xff0c;把程序看作一个不能打开的黑盆子&#xff0c;在完全不

考虑程序内部结构和内部特性的情况下&#xff0c;测试者在程序接口进行测试&#xff0c;它只检查程序功能是否按照需求规格说明书的规定正常使用&#xff0c;程序是否能适当地接收输入数锯而产生正确的输出

信息&#xff0c;并且保持外部信息&#xff08;如数据库或文件&#xff09;的完整性。

8 灰盒测试&#xff1a;

灰盒测试&#xff0c;确实是介于二者之间的&#xff0c;可以这样理解&#xff0c;灰盒测试关注输出对于输入的正确

性&#xff0c;同时也关注内部表现&#xff0c;但这种关注不象白盒那样详细、完整&#xff0c;只是通过一些表征性的现

象、事件、标志来判断内部的运行状态&#xff0c;有时候输出是正确的&#xff0c;但内部其实已经错误了&#xff0c;这

种情况非常多&#xff0c;如果每次都通过白盒测试来操作&#xff0c;效率会很低&#xff0c;因此需要采取这样的一种灰

盒的方法。

9 白盒测试&#xff1a;

白盒测试也称结构测试或逻辑驱动测试&#xff0c;它是知道产品内部工作过程&#xff0c;可通过测试来检

测产品内部动作是否按照规格说明书的规定正常进行&#xff0c;按照程序内部的结构测试程序&#xff0c;检验

程序中的每条通路是否都有能按预定要求正确工作&#xff0c;而不顾它的功能&#xff0c;白盒测试的主要方法

有逻辑驱动、基路测试等&#xff0c;主要用于软件验证。

10 功能测试&#xff1a;

就是对产品的各功能进行验证&#xff0c;根据功能测试用例&#xff0c;逐项测试&#xff0c;检查产品是否达到用户

要求的功能。

11 性能测试&#xff1a;

过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进

行测试。

12 回归测试&#xff1a;

是指修改了旧代码后&#xff0c;重新进行测试以确认修改没有引入新的错误或导致其他代码产生

错误。

13 冒烟测试&#xff1a;

是对软件基本的功能进行测试&#xff0c;测试的对象是每一个新编译的需要正式测试的软件版本&#xff0c;

目的是确认软件基本的功能正常&#xff0c;保证软件系统能跑的起来,可以进行后续的正式测试工作&#xff0c;

如果最基本的测试都有问题&#xff0c;就直接打回开发部了&#xff0c;所以正式交付测试的版本必须首先通过

冒烟测试的考验。

14 随机测试&#xff1a;

要是根据测试者的经验对软件进行功能和性能抽查。

15 压力测试&#xff1a;

压力测试是模拟实际应用的软硬件环境及用户使用过程的系统负荷&#xff0c;长时间或超大负荷

地运行测试软件&#xff0c;来测试被测系统的性能、可靠性、稳定性等。简单的说&#xff0c;压力测试就是检

验持续抗压的能力。

16 负载测试&#xff1a;

通过测试系统在资源超负荷情况下的表现&#xff0c;以发现设计上的错误或验证系统的负载能力。

简单的说&#xff0c;就是检验极限的承受力。



推荐阅读
  • 本文探讨了Java编程中MVC模式的优势与局限,以及如何利用Java开发一款基于鸟瞰视角的赛车游戏。 ... [详细]
  • 全能终端工具推荐:高效、免费、易用
    介绍一款备受好评的全能型终端工具——MobaXterm,它不仅功能强大,而且完全免费,适合各类用户使用。 ... [详细]
  • 探索Squid反向代理中的远程代码执行漏洞
    本文深入探讨了在网站渗透测试过程中发现的Squid反向代理系统中存在的远程代码执行漏洞,旨在帮助网站管理者和开发者了解此类漏洞的危害及防范措施。 ... [详细]
  • poweroff命令用于安全地关闭计算机的操作系统,并最终切断电源。当确保所有用户已退出系统且所有数据均已妥善保存后,可通过此命令立即执行关机操作。 ... [详细]
  • 本文探讨了C++编程语言中声明与定义的区别,以及如何通过内部连接和外部连接来组织源文件,确保代码的正确链接与编译。文章详细解析了不同类型、变量、函数以及类的连接属性,并提供了实用的示例。 ... [详细]
  • 智慧城市建设现状及未来趋势
    随着新基建政策的推进及‘十四五’规划的实施,我国正步入以5G、人工智能等先进技术引领的智慧经济新时代。规划强调加速数字化转型,促进数字政府建设,新基建政策亦倡导城市基础设施的全面数字化。本文探讨了智慧城市的发展背景、全球及国内进展、市场规模、架构设计,以及百度、阿里、腾讯、华为等领军企业在该领域的布局策略。 ... [详细]
  • R语言基础入门指南
    本文介绍R语言的基本概念,包括其作为区分大小写的解释型语言的特点、主要的数据结构类型如向量、矩阵、数据框及列表等,并探讨了R语言中对象的灵活性与函数的应用。此外,文章还提供了关于如何使用R进行基本操作的示例,以及解决常见编程问题的方法。 ... [详细]
  • 本文总结了MySQL的一些实用技巧,包括查询版本、修改字段属性、添加自动增长字段、备份与恢复数据库等操作,并提供了一些常见的SQL语句示例。 ... [详细]
  • 本文详细介绍了Linux操作系统中的cp和scp命令,包括它们的基本使用方法、常见选项以及如何通过scp命令安全地在不同主机之间传输文件。 ... [详细]
  • 本文介绍了在CentOS 6.4系统中安装MySQL 5.5.37时遇到的启动失败和PID文件问题,并提供了详细的解决方案,包括日志分析、权限检查等步骤。 ... [详细]
  • sqlserver动态分区方案例子
    sqlserver动态分区方案例子当我们存储的数据量比较大时,比如超过千万,上亿级别时单纯的使用索引可能效果不明显了,此时我们可以考虑采 ... [详细]
  • 本文详细介绍了在 Ubuntu 16.04 系统中使用 APT-GET 包管理器安装 MySQL 5.7 数据库的过程,并对安装后的文件和目录结构进行了说明,包括重要的配置文件及其功能。 ... [详细]
  • Node.js 入门指南(一)
    本文介绍了Node.js的安装步骤、如何创建第一个应用程序、NPM的基本使用以及处理回调函数的方法。通过实际操作示例,帮助初学者快速掌握Node.js的基础知识。 ... [详细]
  • MySQL数据误删应急处理与预防策略
    本文提供了关于如何应对MySQL数据库中数据误删情况的详细指导,并分享了一些有效的预防措施,帮助数据库管理员减少误操作带来的损失。 ... [详细]
  • Java EE CDI:解决依赖关系冲突的实例
    在本教程中,我们将探讨如何在Java EE的CDI(上下文和依赖注入)框架中有效解决依赖关系的冲突问题。通过学习如何使用限定符,您将能够为应用程序的不同客户端提供多种接口实现,并确保每个客户端都能正确调用其所需的实现。 ... [详细]
author-avatar
仁寿戴氏
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有