什么是黑盒测试

这篇具有很好参考价值的文章主要介绍了什么是黑盒测试。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

软件测试是软件开发生命周期的基本组成部分,无论是对于 Web 还是移动应用程序软件。

测试不仅证明了软件产品的质量,而且还为开发人员提供了增强它的机会。 

几乎每个软件应用程序都需要一行代码或一系列复杂的例程。因此,开发人员必须进行多次测试,以确保代码能够正常运行并实现其预期目的。

黑盒和白盒软件测试是开发人员在这个阶段经常执行的两种测试形式。

在本文中,我们将重点介绍黑盒测试、其基本区别以及黑盒和白盒测试之间的相似之处。

什么是黑盒测试?

黑盒测试,通常称为功能测试,是一种无需了解软件内部代码结构即可检查软件功能的技术。
它可以应用于所有级别的软件测试,但主要用于更高的可接受性和系统相关级别。

黑盒测试是一个独立于其内部结构、设计和实现来测试系统及其行为的过程。

测试人员提供输入,输出被视为该软件测试方法的一部分。

这可以识别系统对预期和意外用户活动、响应时间、可用性困难和可靠性问题的响应。 

黑盒测试是一种强大的方法,因为它端到端地执行系统。

与最终用户“不关心”系统的设计或结构并期望对他们的请求进行适当的回答一样,测试人员可以复制用户活动以确定系统是否兑现了承诺。

程序或应用程序是否提供广告功能可以通过进行黑盒测试来确定。

在黑盒测试中,会检查所有单独的组件,例如用户界面和体验、Web 服务器或应用程序服务器、数据库、依赖项和集成系统。

此类测试的其他名称包括“不透明盒”、“封闭盒”、“基于规范”和“眼对眼”测试。

黑盒测试的类型

以下是黑盒测试的类型:

功能测试

功能测试主要关注软件的关键特性,以及关键组件与整个系统的集成。

该方法涉及冒烟测试/健全性测试、集成测试和系统测试,以测试软件的独特功能和特性。

此测试的一个典型示例是验证只有具有正确凭据的用户才能登录,而具有错误凭据的用户则不能。

非功能测试

非功能测试超越了特性和功能的测试。它不是确定软件是否可以执行操作,而是检查它如何完成该操作。

此类测试检查软件的可用性和理解性、峰值负载下的性能、与相关设备和浏览器的兼容性以及对安全威胁的脆弱性。 

回归测试

 对程序的功能部分进行回归测试,以查看新版本是否显示出其功能的回归或恶化。

进行此测试是为了确定特定功能是否在最近的版本中不再起作用,或者以前有效的操作现在是否表现不佳。

黑盒测试技术 

以下是不同的黑盒测试技术: 

1.等价划分

 作为测试所有可能输入的替代方法,测试人员可以将可用输入“分区”成组,然后仅测试来自每个分区的一个“样本”输入。

测试人员只需检查“18 岁以下”组中的一个出生日期和“18 岁以上”组中的一个日期,例如,如果系统请求用户的出生日期并为所有未满年龄的用户提供相同的响应的 18 岁,以及 18 岁以上的用户的不同反应。

2. 边值分析

 系统在给定边界值附近的独特行为很容易被测试人员检测到。例如,一个字段可能只允许 0 到 99 之间
的数字。边界值(-100、-99 和 -100)为测试人员验证正确的输入验证提供了一种方便的方法。

3. 决策表的模拟

有很多系统会根据一些输入为您提供结果。在发现这样的“规则”或条件集后,测试人员可以确定每个规则的效果并创建相应的测试用例。

4. 状态变化测试

 当从一种状态转换到另一种状态时,特定系统会引发许多响应。一个典型的例子是一个登录系统,它允许用户进行身份验证,但在预定次数的失败尝试后锁定帐户。

 如果测试人员确定了一种状态转换机制,他们可以构建测试用例来探测系统在状态之间转换时的情况。
例如,如果系统在五次不成功的登录尝试后锁定帐户,则测试用例可以检查在第六次登录尝试时发生的情况。

5. 错误猜测

 该技术涉及测试开发人员在构建类似系统时经常犯的错误。例如,测试人员可以检查开发人员是否处理了字段中的空值、数字字段中的文本或纯文本字段中的数字,以及输入的净化——是否可以提交包含可执行代码的用户输入,该代码具有安全影响。

异常错误猜测涉及测试可能影响测试系统的已知软件漏洞。

黑盒测试的优点

以下是黑盒测试的优点: 

 1. 测试用例的快速发展 

测试人员只关心应用程序的图形用户界面 (GUI)。

因此,他们不会检查源代码是否有错误。

2.测试可以外包 

测试人员不需要理解代码;因此外包黑盒软件测试是可能的。 

3. 最终用户体验

测试是从最终用户的角度进行的。 

4. 批判性评价

由于测试人员不熟悉代码,因此他们对代码的功能没有先入为主的概念。 

黑盒测试的缺点

以下是黑盒测试的缺点:

1. 测试路径可能被省略或重复

可以重复测试过程,或者可以完全省略特定路径。

当软件设计人员已经执行了测试时,它们可能是不必要的。 

2. 申请的某些部分可能不会被审查

由于测试人员缺乏编码知识,可能无法检查某些应用程序功能和特性。 

3. 需要精确和明确的测试规范

测试人员必须确定他们必须测试什么以确保程序符合最高质量标准。文章来源地址https://www.toymoban.com/news/detail-409642.html

结论 

到了这里,关于什么是黑盒测试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Soft:软件开发的简介(敏捷开发等6大软件开发模式)、软件测试的简介(单元测试/集成测试/系统测试/验收测试/回归测试、黑白灰功能测试、DEV等四套环境)、运维的简介之详细攻略

    Soft:软件开发的简介(敏捷开发等6大软件开发模式)、软件测试的简介(单元测试/集成测试/系统测试/验收测试/回归测试、黑白灰功能测试、DEV等四套环境)、运维的简介之详细攻略 目录 1、软件开发(敏捷开发等6大软件开发模式) Computer:敏捷开发Scrum方法的简介、发展历程、开

    2024年02月04日
    浏览(60)
  • 软件测试的终点是“测试开发”吗?

    前言 在一线大厂,没有测试这个岗位,只有测开这个岗位,即使是做业务测试,那么你的title也是测开。 所以想聊一聊测开的看法,但不代表这是正确的看法,仅供参考。 没来阿里之前我对测开的看法 一直以为专职做自动化测试和性能测试是测试这条路的最终归宿,测试开

    2024年02月08日
    浏览(44)
  • 【软件测试】测试与开发一对欢喜冤家......

    大伙普遍的看法:测试与开发天然对立,就应该是一对冤家。 以一些“行内人”的说法:测试与开发关系太好,不温不火,软件质量是提高不上去的! 从而,人为引发了一系列恩怨纠葛。 绩效考核上,开发必须少写bug,测试必须多找bug,从而把测试、开发对立起来!测试为

    2023年04月09日
    浏览(58)
  • 软件测试 | 测试开发 | Django+Celery框架自动化定时任务开发

    ** 本章介绍使用DjCelery即Django+Celery框架开发定时任务功能,在Autotestplat平台上实现单一接口自动化测试脚本、业务场景接口自动化测试脚本、App自动化测试脚本、Web自动化测试脚本等任务的定时执行、调度、管理等,从而取代Jenkins上的定时执行脚本和发送邮件等功能。** 自动

    2023年04月08日
    浏览(51)
  • 软件测试开发的基本概念

                                        今天的这个知识比较少,我们来看看 测试和调试的区别 1.目的不同 测试的任务是发现程序中的缺陷; 调试的任务是定位并且解决程序中的问题。 2.参与角色不同 测试主要是由测试人员和开发人员来执行,黑盒测试主要由测试人员完成

    2023年04月08日
    浏览(52)
  • 按软件开发阶段的角度划分:单元测试、集成测试、系统测试、验收测试

    1.单元测试(Unit Testing) 单元测试,又称模块测试。对软件的组成单位进行测试,其目的是检验软件基本组成单位的正确性。测试的对象是软件里测试的最小单位:模块。 测试阶段:编码后或者编码前(TDD:测试驱动开发) 测试对象:最小模块 测试人员:白盒测试工程师或

    2024年02月11日
    浏览(63)
  • 【软件测试】测试&开发的一生之敌-BUG

    BUG相比大家都知道,程序运行出错或者与预期不符就是BUG.现在我们来用测试人员的角度来看待BUG. 测试人员要测试开发人员的代码,找出开发人员可能忽略的问题.然后把这个问题反馈给开发人员. 如何把BUG清晰简洁明了的描述出来,会涉及到很多东西.这并不只是简单说一下遇到

    2024年02月04日
    浏览(58)
  • 软件测试/测试开发丨结对编程助手 GitHubCopilot

    GitHub Copilot 是一款 AI 结对程序员,可帮助您更快、更少地编写代码。GitHub Copilot 由 GitHub、OpenAI 和 Microsoft 开发的生成式 AI 模型提供支持。它可作为 Visual Studio Code、Visual Studio、Neovim 和 JetBrains 集成开发环境 (IDE) 套件的扩展。 如何使用 环境准备 科学上网:具备流畅访问 Gi

    2024年02月08日
    浏览(83)
  • 软件测试/测试开发丨Selenium环境安装配置

    1、下载浏览器 目前比较常用的浏览器是 Google Chrome 浏览器,所以本教程以 chrome 为主,后面简介一下其他浏览器的环境配置。 chrome 下载: www.google.cn/chrome/ 2、chromedriver 环境配置 chromedriver 是chromedriver提供的浏览器驱动程序,他的作用是将代码的请求转发给浏览器。 (1)ch

    2024年02月03日
    浏览(84)
  • 软件测试/测试开发丨​利用ChatGPT编写测试用例

    测试用例是测试人员的核心工作内容,是测试人员思想的“实现类”,其充分体现了测试的思路,可以为后续的测试行为提供指导,是测试人员了解业务的重要根据和质量之根本。如果测试用例设计得不完成,出现了遗漏,那么通常是会出现大家不想看到的后果,如漏测、线

    2024年02月08日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包