软件测试知识面试题:白盒测试、黑盒测试、测试用例

文章目录

  • 白盒测试
    • 1、白盒测试分两类
    • 2、白盒测试的四个原则
    • 3、白盒测试常用的7类测试
  • 黑盒测试
    • 1、黑盒测试的优缺点
    • 2、黑盒测试的方法
    • 3、黑盒测试的原则
  • 测试用例
    • 1、测试用例包含
    • 2、设计测试用例所需的文档资料
    • 3、采用白盒测试技术设计用例的目的
    • 4、采用黑盒测试技术设计用例的目的
    • 功能测试和接口测试的区别是什么?

白盒测试

1、白盒测试分两类

(1)静态测试
静态测试是测试中很重要的方法之一。它不要求在计算机上实际执行所测程序,主要以
一些人工的模拟技术对软件进行分析和测试。静态测试大约可以找出 25%—60%的逻辑错误。

(2)动态测试
输入一组预先按照一定的测试准则设计的实例数据驱动运行程序,检查程序功能是否符
合设计要求,发现程序中错误的过程。

2、白盒测试的四个原则

1、保证一个模块中所有路径至少被测试一次
2、所有逻辑值都要测试真和假两种情况
3、检查程序的内部数据结构是否有效
4、再上、下边界及可操作范围内运行所有循环

3、白盒测试常用的7类测试

1、逻辑覆盖法
(1) 语句覆盖
(2) 判定覆盖
(3) 条件覆盖
(4) 条件判定组合覆盖
(5) 多条件覆盖
(6) 修正条件判定覆盖
(7) 组合覆盖
(8) 路径覆盖

2、插桩技术
3、基本路径测试法
4、域测试法
5、符号测试
6、Z路径覆盖法
7、程序变异测试法

黑盒测试

不考虑程序内部逻辑结构和内部特性的情况下,测试程序的功能,测试者要在软件的接口处进行,它只检查程序功能是否按照规格说明书的规定正常使用,程序是否能接收输入数据而产生正确的输出信息,以及性能是否满足用户的需求,并且保持数据库或外部信息的完整性。

1、黑盒测试的优缺点

优点:

  1. 从产品功能角度测试可以最大程度满足用户的需求
  2. 相同动作可重复执行,最枯燥的部分可由机器完成
  3. 依据测试用例针对性地找寻问题,定位更为准确,容易生成测试数据
  4. 将测试直接和程序/系统要完成的操作相关联

缺点:

  1. 代码得不到测试
  2. 如果规格说明设计有误,很难发现
  3. 测试不能充分的进行
  4. 结果取决于测试用例的设计

2、黑盒测试的方法

  • 等价类划分法
  • 边界值分析法
  • 因果图法
  • 判定表驱动测试
  • 场景法
  • 功能图法
  • 错误推测法
  • 正交试验设计法

3、黑盒测试的原则

  1. 根据软件规格说明书设计测试用例,规格说明书的正确性是至关重要的
  2. 针对性的地找问题,并且正确定位等价类
  3. 功能是否有缺陷或错误现象?
  4. 根据测试的重要性来确定测试等级和测试重点,减少程序可能出现的缺陷
  5. 在接口处,输入的信息是否能正确接受?接受后能否输出正确的结果?
  6. 认真选择测试策略,尽可能发现程序的数据结构错误或外部信息访问错误,站在用户立场上进行测试

测试用例

1、测试用例包含

在这里插入图片描述

2、设计测试用例所需的文档资料

软件需求说明书
软件设计说明书
软件测试需求说明书
成熟的测试用例

3、采用白盒测试技术设计用例的目的

在这里插入图片描述

4、采用黑盒测试技术设计用例的目的

在这里插入图片描述

功能测试和接口测试的区别是什么?

功能测试:也被称为系统测试,主要针对软件系统的功能进行测试,确保软件的功能符合需求规格说明,主要关注单个功能或者多个功能的组合是否能够正常实现。

接口测试:主要针对软件系统提供的接口进行测试,测试的是系统组件之间的接口,例如HTTP接口、数据库接口等。这种测试主要关注不同系统组件之间数据传输的正确性、稳定性以及安全性。

总结来说,功能测试更关注单个功能或多个功能的组合是否能正常实现,而接口测试更关注系统组件之间的数据传输。在实施测试时,这两种方法通常会结合使用。

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

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

相关文章

InnoDB数据页结构---页目录 PageDirectory

InnoDB为了不同的目的而设计了许多种不同类型的页,比如存放表空间头部信息的页,存放Insert Buffer信息的页,存放INODE信息的页,存放undo日志信息的页等等等等。本文聚焦的是那些存放我们表中记录的那种类型的页,官方称…

ChatGPT提问技巧:可解释的软提示

ChatGPT提问技巧:可解释的软提示 可解释的软提示是一种既能控制模型生成的文本,又能为模型提供一定灵活性的技术。 具体做法是为模型提供一组受控输入和一些有关所需输出的附加信息。这种技术可以使生成的文本更具可解释性和可控性。 提示示例及其公式…

edm邮件是什么意思:与普通邮件有何不同?

edm邮件是什么意思?如何优化邮件内容以提高转化率? edm邮件因其独特的营销价值而备受关注。那么,edm邮件究竟是什么意思呢?它与普通邮件又有哪些不同呢?下面,AokSend就来为大家介绍一下。 edm邮件的概念与…

【SpringCloud微服务实战07】Sentinel 服务保护

Sentinel 是阿里巴巴开源的一款微服务流量控制组件。主要作用: 流量控制:避免因瞬间高并发流量而导致服务故障流。超时处理、线程隔离、降级熔断:避免因服务故障引起的雪崩问题。一、Sentinel 安装 1、安装Sentinel控制台,下载jar包并启动:Releases alibaba/Sentinel G…

基于大数据的商业模式创新研究

目录 一、导论 2 (一)研究背景 2 (二)研究意义 2 (三)研究内容 3 (四)研究思路与研究方法 4 (五)国内外研究现状 6 二、大数据的界定与应用概况 7 &#xff…

RPC基础知识回顾

RPC基础知识回顾 1、先认识一下大家熟悉的HTTP 大家都了解HTTP吧。相信项目中也用过一些。 比如: JDK自带的老旧的HttpURLConnection,封装写的很累,java8之前基于HTTP1.0。在java9开始支持Http2.0Spring的其中RestTemplate都是基于HTTP/1.1的请求。最新的还有Sp…

Transformer家族

在《Transformer原理》中我们介绍了,现在很多大模型都是基于Transformer,其中最出名就是GPT和BERT模型,在GPT和BERT模型被提出来之后,NLP领域也出现了基于Transformer结构的模型,按照模型结构基本可以分为三类&#xf…

MyBatis3源码深度解析(十)MyBatis常用工具类(三)MetaObjectMetaClass

文章目录 3.4 MetaObject3.5 MetaClass 3.4 MetaObject MetaObject是MyBatis提供的反射工具类,可以方便地获取和设置对象的属性值。 该工具类在MyBatis源码中出现的概率非常高。 假设有两个实体类:用户信息User和订单信息Order,一个用户可…

HCIA-Datacom题库(自己整理分类的)_50_路由判断【11道题】

1.以下两条配置命令可以实现路由器RTA去往同一目的地10.1.1.0的路由主备备份。√ [RTA]ip route-static 10.1.1.0 24 12.1.1.1 Permanent [RTA]ip route-static 10.1.1.0 24 13.1.1.1 2.动态路由协议能自动适应网络拓扑的变化。√ 3.如图,只需要在AR1上配置静态…

嵌入式中要能看懂这50个电路分享

大家好,今天主要给大家分享一下,嵌入式工程师常见的硬件电路。 单片机 电源 声音模块 收音机 485 蓝牙 光耦 can 光敏电阻 单片机 矩阵 单片机电路 时钟 ADC 接口电路 红外发射 显示模块 红外接收 蜂鸣器驱动 流水灯 usb供电 烧录电路 数码管 EEPROM LCD…

lnmp环境部署-im

安装nginx 配置nginx源 vim /etc/yum.repos.d/nginx.repo [nginx-stable] namenginx stable repo baseurlhttp://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck1 enabled1 gpgkeyhttps://nginx.org/keys/nginx_signing.key module_hotfixestrue安装nginx yum …

宽带波束形成

上一篇介绍了窄带波束形成,当信号的带宽增加,窄带波束形成的性能会降低很多。 首先从窄带beamforming说起 阵列模式:M个阵元组成的线性阵列 当有个输入信号,,对应的信号的入射方向为,。第一个信号是感兴…

break和continue区别及使用

break和continue是跳转控制语句,本篇文章将详细说明这两个的概念及作用。 1、continue 这张图是2024年3月的日期图,列出了每日和每周。 假设上面是上班工作日期,一个月有三十天,但是每周只有七天。简单思考一下,每周的…

el-select下拉框无法显示 elementplus踩坑日常

在使用el-select的时候参考了官方文档&#xff0c;但下拉框无法显示 解决办法1&#xff1a;检查是否没有按需引入eloption只引入了elselect 解决办法2&#xff1a;在el-select里面加入:popper-append-to-body"false" <el-select:popper-append-to-body"fa…

Mybatis八股

Mybatis是什么 Mybatis是一个半ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;它内部封装了JDBC&#xff0c;加载驱动、创建连接、创建statement等繁杂的过程&#xff0c;开发者开发时只需要关注如何编写SQL语句&#xff0c;可以严格控制sql执行性能&#xff0c;灵…

运行springboot项目提示:java: 错误: 不支持发行版本 18、java: 错误: 无效的源发行版:18

java: 错误: 不支持发行版本 18 解决方法&#xff1a;修改字节码版本&#xff0c;可以多试几次。 java: 错误: 无效的源发行版&#xff1a;18 解决方法&#xff1a; 出现这些错误原因&#xff1a; spring版本与jdk版本不对应 我的spring boot版本是3.2.2&#xff0c;对应的j…

实体店新模式:线下正规实体门店的转型与升级策略

在当今竞争激烈的市场环境下&#xff0c;线下正规实体门店需要不断转型与升级&#xff0c;以适应消费者的需求和市场的变化。 作为一名开鲜奶吧5年的创业者&#xff0c;我见证了无数实体店的成功与失败&#xff0c;下面的文章我将通过具体案例&#xff0c;为大家分享一些实用的…

YOLOv9如何训练自己的数据集(NEU-DET为案列)

&#x1f4a1;&#x1f4a1;&#x1f4a1;本文内容&#xff1a;教会你用自己数据集训练YOLOv9模型 YOLOv9魔术师专栏 ☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️ ☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️ 包含注意力机制魔…

MyBatis拦截器四种类型和自定义拦截器的使用流程

文章目录 MyBatis拦截器四种类型和自定义拦截器的使用流程一、MyBatis拦截器四种类型的详细解释&#xff1a;1. **ParameterHandler 拦截器**&#xff1a;2. **ResultSetHandler 拦截器**&#xff1a;3. **StatementHandler 拦截器**&#xff1a;4. **Interceptor Chain 拦截器…

题目 2610: 第十二届省赛真题-杨辉三角形

题目描述: 下面的图形是著名的杨辉三角形&#xff1a; 如果我们按从上到下、从左到右的顺序把所有数排成一列&#xff0c;可以得到如下 数列&#xff1a; 1, 1, 1, 1, 2, 1, 1, 3, 3, 1, 1, 4, 6, 4, 1, ... 给定一个正整数 N&#xff0c;请你输出数列中第一次出现 N 是在第几…