当前位置: 首页 > news >正文

黑盒测试和白盒测试_黑盒测试是什么及其测试方法

一:黑盒测试是什么:

黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口处进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

0aa60cb5dc40156b93c42446c3400bcf.png

二:常见的测试方法:

常见的测试方法有等价类、边界值、错误推测法、流程图法、判定表法、正交试验法等。

①等价类步骤:

第一步:划分等价类并进行适当细分;

第二步:为每个等价类进行编号;

第三步:设计一条用例尽可能多的覆盖有效等价类、继续设计用例至所有有效等价类均覆盖;

第四步:设计一条用例尽可能多的覆盖无效等价类、继续设计用例至所有无效等价类均覆盖。

②边界值步骤:

第一步:确认边界,包括隐藏边界的上点和离点;

第二步:确定增量 设计测试用例。

③错误猜测法步骤:

在测试程序时,人们可以根据经验或直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的测试用例的方法。

④流程图法步骤:

第一步:根据说明,描述出程序的基本流及各项备选流;

第二步:根据基本流和各项备选流生成不同的场景;

第三步:对每一个场景生成相应的测试用例;

第四步:对生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值。

⑤判定表步骤:

第一步: 分析被测应用,确定原因(输入)和结果(输出);

第二步:确定因果逻辑关系;

第三步:把因果图转换为判定表;

第四步:根据约束条件简化判定表,并给出结果;

第五步:设计测试用例。

⑥正交实验法步骤:

第一步:判断有哪些因素(输入);

第二步:判断每个因素有哪几个水平(输入的可取值);

第三步:选择一个合适的正交表;

第四步:把输入的值映射到表中;

第五步:把每一行的各因素水平的组合作为一个测试用例;

第六步:加上你认为可疑且没有在表中出现的组合。

相关文章:

  • kmem 反编译linux内核_Linux 内核 VS 内存碎片 (上)
  • 总有一些人可以超越死亡——leo荐书(5)
  • 【转】为什么我认为每个程序员都应该用Mac OS X?
  • 用yacc编写的算术运算计算器_Android版科学计算器 Casio business 下载
  • 【转】开发人员为何应该使用 Mac OS X 兼 OS X 小史
  • ps 去掉一个人_电脑没有ps软件?只需要这个网站就能帮你搞定
  • rs多个设备同时传输_华为账号真的能同时登陆多个设备吗?华为官方的介绍来了...
  • dubbo invoke 日期参数怎么传_每日一技|巧用 Telnet 调试 Dubbo 服务
  • 360安全助手 -- 强力卸载电脑上的软件 的问题
  • basic语言基础 chm_专升本:计算机基础知识点大全
  • 等候环境对他的事业完全有利才动手的人,将永远不会成功。
  • python随机生成运算符_我怎样才能随机选择一个数学运算符并用它来问重复出现的数学问题?...
  • IIS7中注册wcf
  • 平均聚类系数_模糊数学笔记:五、模糊聚类
  • 看到苹果的把视频转接线当金条卖,我彻底怒了。。。。。。。
  • 《剑指offer》分解让复杂问题更简单
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • chrome扩展demo1-小时钟
  • JSDuck 与 AngularJS 融合技巧
  • k8s 面向应用开发者的基础命令
  • laravel with 查询列表限制条数
  • mac修复ab及siege安装
  • Netty+SpringBoot+FastDFS+Html5实现聊天App(六)
  • php的插入排序,通过双层for循环
  • Spring Boot快速入门(一):Hello Spring Boot
  • Spring声明式事务管理之一:五大属性分析
  • 阿里研究院入选中国企业智库系统影响力榜
  • 从重复到重用
  • 关于List、List?、ListObject的区别
  • 前端存储 - localStorage
  • 数据结构java版之冒泡排序及优化
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • 我是如何设计 Upload 上传组件的
  • 学习JavaScript数据结构与算法 — 树
  • 正则表达式
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • (HAL)STM32F103C6T8——软件模拟I2C驱动0.96寸OLED屏幕
  • (ros//EnvironmentVariables)ros环境变量
  • (备忘)Java Map 遍历
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (机器学习-深度学习快速入门)第一章第一节:Python环境和数据分析
  • (五)网络优化与超参数选择--九五小庞
  • (已解决)什么是vue导航守卫
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .bat文件调用java类的main方法
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .NET 线程 Thread 进程 Process、线程池 pool、Invoke、begininvoke、异步回调
  • .NET导入Excel数据
  • .NET的数据绑定
  • .NET实现之(自动更新)
  • [AIGC] 如何建立和优化你的工作流?
  • [Android]Android开发入门之HelloWorld