第7章 软件测试(1)

2023-05-16

今天是个开心的日子,具体为啥开心我知道你懂得。继续我的龟速学习小笔记。

它来了它来了,你说它很简单,当我看到此章的一部分内容后发现了原来学霸和学渣差别就是如此大(捂脸),今天由于时间关系,只能先写一部分简单的。

软件测试是保证软件质量的关键,它是对需求分析、设计和编码的最终复审。

 7.1软件测试的目标或定义

(1)软件测试是为了发现错误而执行程序的过程。

(2)一个好的测试用例能够发现至今尚未发现的错误。

(3)一个成功的测试是发现了至今尚未发现的错误的测试。

测试阶段的基本任务:根据软件开发各阶段的文档资料和程序内部结构,精心设计一组高产的测试用例,利用这些用例执行程序,找出软件中潜在的各种错误缺陷,一般不可能发现程序中的所有错误。

7.2软件测试的原则

(1)用例要有输入数据,又要有对应的输出结果,要做到“有的放矢”

(2)用例要选用合理的输入数据,还应该选不合理的输入数据,这样能更多的发现错误,提高程序的可能性,还可以测出程序的排错能力。

(3)检查程序是否做了它应该做的和不应该做的

(4)提前指定测试计划

(5)测试计划,测试用例、测试报告必须作为文档长期保存。

(6)pare to原理说明测试发现的错误中80%很有可能是由程序中20%的模块造成的,即错误出现的“群集性”现象,可以把pare to原理应用到软件测试中,但关键问题时如何找到这些可疑的有错模块并进行彻底测试。

(7)应该避免测试自己的程序,对需求规格说明的理解而引入的错误则更不容易发现,因此应该由独立的第三方从事测试工作,会更客观、更有效。

7.3软件测试方法及分类

一般把被测程序在机器上运行称为“动态测试”,不在机器上运行的被测程序称为“静态分析”两种的属于软件测试,动态测试的方法中又根据测试用例的设计方法不同,分为黑盒测试和白盒测试法两类。

7.3.1静态测试与动态测试

1、静态测试:就是静态分析,被测程序不在机器上运行,对模块的源代码进行研读、查找错误或收集一些度量数据,采用人工检测和计算机辅助静态分析手段对程序进行检测,只进行特性分析

(1)人工测试:人工审查程序或评审软件还要对各阶段的软件产品进行检验,人工测试可以有效地发现软件的逻辑设计和编码错误,发现计算机不容易发现的错误。

(2)计算机辅助静态分析:指利用静态分析工具对被测程序进行特性分析,从程序中提取一些信息,以便检查程序逻辑的各种缺陷和可疑的程序构造,静态分析中还可以用符号代替数值求得程序结果,以便对程序进行运算规律检验。

2、动态测试

是指通过运行程序发现错误,有两种测试方法:如果已知产品应该具有的功能,可以通过测试来检验每个功能是否都能正常使用,如果知道产品的内部工作过程,可以通过测试来检验产品内部结构及处理过程是否按照规格说明书的规定正常进行。前一种方法为黑盒测试法,后一种方法称为白盒测试法,对软件产品进行动态测试时,也用这两种方法。

7.3.2黑盒测试与白盒测试

1、黑盒测试法

也称功能测试或数据驱动测试,把被测程序看成一个黑盒子,只在软件接口处进行测试,依据需求规格说明书检查程序是否满足功能要求,每个功能是否能正常使用,是否满足用户的要求,程序是否适当地接收输入数据和产生正确的输出信息,并且保持外部信息的完整性。

通过黑盒测试主要发现以下错误

(1)是否有不正确或遗漏的功能

(2)在接口上能否正确地接受输入数据,能否产生正确的输出信息。

(3)访问外部信息是否有错

(4)性能上是否满足要求

(5)界面是否有错,是否美观、友好

用黑盒测试法进行测试时,必须在所有可能的输入条件和输出条件中确定测试数据,要企图遍历所有的输入数据往往是不可能做到的。

2、白盒测试法

也称为结构测试或逻辑驱动测试,白盒测试与黑盒测试法不同,测试人员将程序视为一个透明的白盒子,需要了解程序的内部结构和处理过程,检查处理过程的细节为基础,对程序结构特性做到一定程度的覆盖,对程序中的所有逻辑路径进行测试,并检验内部控制结构是否有错,确定实行的运行状态与预期的状态是否一致,也是不可能进行完全的测试。

  无论使用那一种测试方法,对于一个大的软件系统完全彻底测试在实际中都不能的,为了用有限的测试发现尽可能多的错误,必须精心审计测试用例。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第7章 软件测试(1) 的相关文章

  • 软件测试开发/全日制/测试管理丨接口测试抓包与 Mock/接口自动化测试

    在软件开发中 接口测试是确保系统各个组件之间协同工作的重要环节 接口测试抓包与Mock以及接口自动化测试相结合 能够更全面 高效地验证接口的正确性 性能和稳定性 从而打造一个稳健的接口生态系统 接口测试抓包 接口测试抓包是一种通过监控和记录
  • 软件测试开发/全日制/测试管理丨用户端 App 自动化测试

    随着移动应用的普及和发展 用户端 App 自动化测试成为确保应用质量 提高测试效率的关键环节 这一测试方法不仅可以模拟用户真实的操作行为 还能够覆盖多种设备和平台 为移动应用的稳定性和用户体验提供可靠的保障 选择合适的自动化测试框架 在用户
  • 软件测试开发/全日制/测试管理丨Docker容器技术

    Docker 是一种轻量级的容器技术 通过将应用程序及其所有依赖项封装到一个可移植的容器中 实现了应用程序的便携性 可部署性和可伸缩性 下面是关于 Docker 容器技术的主要概念和优势 主要概念 容器 Container 容器是一个轻量级
  • 等价类划分法

    专注于分享软件测试干货内容 欢迎点赞 收藏 留言 如有错误敬请指正 软件测试面试题分享 1000道软件测试面试题及答案 软件测试实战项目分享 纯接口项目 完整接口文档 软件测试实战项目分享 WEB 测试自动化项目实战 软件测试学习教程推荐
  • 软件测试开发/全日制/测试管理丨用户端 Web 自动化测试

    随着Web应用的普及和不断发展 用户端Web自动化测试成为确保Web应用质量的重要手段 这种测试方法不仅提高了测试效率 也帮助团队及时发现和解决潜在问题 确保用户体验的连贯性和稳定性 工具选择 用户端Web自动化测试的第一步是选择适当的工具
  • 【Mysql】InnoDB 引擎中的页目录

    一 页目录和槽 现在知道记录在页中按照主键大小顺序串成了单链表 那么我使用主键查询的时候 最顺其自然的办法肯定是从第一条记录 也就是 Infrimum 记录开始 一直向后找 只要存在总会找到 这种在数据量少的时候还好说 一旦数据多了 遍历耗
  • Jmeter 压测-性能调优5大注意

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 2k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 小白也能学会的创建Git仓库实操

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 2k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • #私密朋友圈被吐槽有bug?官方致歉!网友:尴尬了......

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 2k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 外包干了3个月,技术退步明显。。。。。

    先说一下自己的情况 本科生 19年通过校招进入广州某软件公司 干了接近4年的功能测试 今年年初 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了四年的功能测试 已经让我变得不思进取 谈了2年的女朋友
  • 软件测试|SQLAlchemy环境安装与基础使用

    简介 SQLAlchemy 是一个强大的 Python 库 用于与关系型数据库进行交互 它提供了高度抽象的对象关系映射 ORM 工具 允许使用 Python 对象来操作数据库 而不必编写原生SQL查询 本文将介绍如何安装 SQLAlchem
  • 软件测试|教你使用Python下载图片

    前言 我一直觉得Windows系统默认的桌面背景不好看 但是自己又没有好的资源可以进行替换 突然我一个朋友提醒了我 网络上的图片这么多 你甚至可以每天换很多个好看的背景 但是如果让我手动去设置的话 我觉得太麻烦了 我不如使用技术手段将图片下
  • 一篇文章带你了解Python常用自动化测试框架——Pytest

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • Jmeter 性能-阶梯式性能指标监听

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • Jmeter 性能-阶梯负载最终请求数

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 甜蜜而简洁 —— 深入了解Pytest插件pytest-sugar

    在日常的软件开发中 测试是确保代码质量的关键步骤之一 然而 对于测试报告的生成和测试结果的可读性 一直以来都是开发者关注的焦点 Pytest插件 pytest sugar 以其清晰而美观的输出 为我们提供了一种愉悦的测试体验 本文将深入介绍
  • 月薪2W的软件测试工程师,到底是做什么的?

    在生活中 我们常常会遇到以下几种窘迫时刻 准备骑共享单车出行 却发现扫码开锁半天 车子都没有反应 手机导航打车 却发现地图定位偏差很大 司机总是跑错地方 买个水 却遭遇自动售货机吐币 或者不找零钱 好不容易休息打个游戏 却一直出现卡顿 闪退
  • 外包干了3个月,技术退步明显。。。。。

    先说一下自己的情况 本科生 20年通过校招进入广州某软件公司 干了接近3年的 功能测试 今年年初 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了3年的功能测试 已经让我变得不思进取 谈了2年的女朋
  • 一文从0到1手把手教学UI自动化测试之数据驱动!

    在UI的自动化测试中 我们需要把测试使用到的数据分离到文件中 如果单纯的写在我们的测试模块里面 不是一个好的设计 所以不管是什么类型的自动化测试 都是需要把数据分离出来的 当然分离到具体的文件里面 文件的形式其实有很多的 这里主要说明JSO
  • 用Python实现高效数据记录!Web自动化技术助你告别重复劳动!

    自动化关键数据记录 简介 关键数据记录是 Web 自动化测试中的关键部分 它们提供了关于系统行为和执行过程的详细信息 有助于验证用例的正确性 排查问题和确保应用程序的质量 行为日志 行为日志是一种用于记录系统或应用程序的操作和事件的技术 它

随机推荐

  • ubantu安装搜狗常见问题

    安装详情 参考步骤 语言设置里已经设置为fcitx xff0c 也装了这个 xff0c 但按照教程 xff0c 重启后 xff0c 点击键盘图标 xff0c 配置语言时 xff0c 却弹出来了这样的对话框 xff08 您正在图形界面下运行
  • ubuntu下virtualbox的安装、卸载

    一 添加VirtualBox的源并安装5 1版本 virtualbox官网 xff1a https www virtualbox org wiki Download Old Builds 虽然也可以直接安装deb包 xff08 例如 xff
  • CoreData的简单使用<二、CoreData两张数据库表的关联操作>

    两张数据库表的关联操作 在实际的数据结构中难免会遇到两张数据表需要进行关联 xff0c 比如通用的例子 xff0c 公司有两个员工张三和李四 xff0c 分别属于iOS和android部门 xff0c 如果所有的员工属于一张表 xff0c
  • 瑞士移位赛赛制解释

    这种比赛是用瑞士轮转法实施的积分编排制比赛 当参赛队数较多 xff0c 而比赛时间又不很充裕时 xff0c 瑞士移位法是理想的比赛方法 比赛分开闭室 各队都给予编号 xff0c 在整个比赛过程中各队的编号不动 第1轮对阵一般安排强队对弱队
  • Springboot:Spring Assistant创建项目框架

    Springboot Spring Assistant创建项目框架 Springboot自动配置项目流程步骤如下所示 第一步 第二步 第三步 第四步
  • vnc server干什么用的,简单介绍vnc server是干什么用的

    VNC Server 是一般 Linux 发行版都会附带的 vnc服务器软件 vncserver 是一个为了满足分布式用户共享服务器上面的资源 xff0c 而在服务器上开启的一项服务 xff0c 对应的客户端软件为vncviewer xff
  • GITHUB下载慢解决办法-插件解决

    在油猴上搜索此插件 或者直接导入插件代码如下 61 61 UserScript 61 61 64 name Github 增强 高速下载 64 name zh CN Github 增强 高速下载 64 name zh TW Github 增
  • OSPF路由协议配置实验

    实验目的 xff1a 理解OSPF xff1b 掌握OSPF的配置方法 xff1b 掌握查看OSPF协议的相关信息 实验器材 xff1a 路由器及PC机 xff0c 双绞线 实验内容 xff1a 本实验通过在路由器上配置OSPF协议 xff
  • linux 22.04版本ubuntu换源

    1 备份原始源文件 执行下面命令 xff0c 将原来的源文件备份保存 sudo cp etc apt sources list etc apt sources list bak 2 修改源文件sources list 打开源文件 xff0c
  • jquery dialog 弹出 ajax加载数据

    我之前就是想实现一个弹框 xff0c 在弹框的时候用ajax 动态加载要展示的内容 xff0c 这个地方实现起来并不难 xff0c 但是在实现的时候遇到了一个坑 页面 xff1a lt div id 61 34 logDiv 34 styl
  • 解决STM32新增加函数出现Undefined symbol HAL_ADC_Init (referred from main.o). 问题

    最近在开发STM32L0xx系列产品的ADC采集项目 xff0c 在老工程上添加库函数 xff0c stm32l0xx hal adc h stm32l0xx hal adc c函数 进行ADC初始化 xff0c 编译不通过出现 xff0c
  • GET,POST,PUT,DELETE,OPTIONS等请求方式简单总结

    之前做的java web项目 xff0c 基本上只使用get和post的请求方式 xff0c 但是现在新项目额外增加了put xff0c delete xff0c 查了点资料 xff0c 做个简单的总结 1 GET get请求是用来获取数据
  • IOS TableView Cell重用机制及TableView常用Code

    写的太好了 xff0c 多谢楼主的无私分享 文章来自 xff1a http heidianfeng blog 163 com blog static 6184345620121114104552518 创建UITableViewContro
  • 编译Linux驱动程序

    基于Ubuntu 12 10 xff0c 编译Linux驱动程序 1 准备linux内核源码 此时 xff0c 我要编译的驱动是基于Ubuntu 12 10内核的 xff0c 所以我下载的是其对应的内核源码包 xff1a linux 3 5
  • 卸载windows10子系统卸载linux

    参考地址 xff1a https docs microsoft com en us windows wsl wsl config 查看所有已经安装的分发版本 xff1a wsl list all 查看正在运行的分发版本 xff1a wsl
  • github镜像站

    github镜像站 xff1a https hub fastgit org GitHub 在国内经常会出现无法访问的情况 xff0c 下面分享几个 GitHub 镜像站供大家使用 xff01 全局加速 可直接访问站点 xff0c 查看代码等
  • vnc连接linux失败,vnc连接linux失败解决办法

    在日常工作学习中 xff0c 经常会使用到vnc连接 xff0c 那有小伙伴知道如何进行vnc连接linux吗 xff1f 当vnc连接linux失败又该如何解决呢 xff1f 之前有简单介绍过如何实现vnc连接linux 那接下来让我们一
  • 域名是如何关联到CDN的

    用户在访问一个域名的时候 xff0c 网络中是怎么知道这个域名到底是配置在哪一个CDN厂商的呢 xff1f 笔者以test1 huiziguoxueshe com为例 xff0c 来描述下具体的过程 xff0c 如下所示 xff1a ste
  • 第五章:软件详细设计

    真是应了那句 xff1a 白天游四方 晚上点灯补裤裆 捂脸 xff09 xff0c 孩子睡了夜深人静了 我才是开始我的小笔记整理工作 详细设计是软件设计的第二阶段 xff0c 这一阶段的工作 xff0c 就是要对系统中的每个模块给出足够详细
  • 第7章 软件测试(1)

    今天是个开心的日子 xff0c 具体为啥开心我知道你懂得 继续我的龟速学习小笔记 它来了它来了 xff0c 你说它很简单 xff0c 当我看到此章的一部分内容后发现了原来学霸和学渣差别就是如此大 xff08 捂脸 xff09 xff0c 今