黑盒测试是什么测试,什么是黑盒白盒测试
黑匣子测试是独立于内部结构、设计和实现来测试系统及其行为的过程。
每天分享最新、最流行的软件开发知识和最新的行业趋势,希望大家一键三连,多多支持,跪求关注,点赞,留言。
软件测试是Web或移动APP软件软件开发生命周期的基本组成部分。
测试不仅证明了软件产品的质量,也为开发人员提供了加强它的机会。
大多数软件APP应用程序需要一行代码或一系列复杂的例程。
因此,开发人员必须进行多次测试,以确保代码正常运行并达到预期目的。
黑盒和白盒软件测试是开发人员在此阶段经常执行的两种测试形式。
本文重点介绍黑盒测试,其基本区别,以及黑盒和白盒测试的相似之处。
黑匣子测试是什么? 黑匣子测试通常称为功能测试,是一种在不了解软件内部代码结构的情况下检查软件功能的技术。
它适用于所有级别的软件测试,但主要用于更高的可接受性和系统相关级别。
黑匣子测试是独立于内部结构、设计和实现来测试系统及其行为的过程。
测试人员提供输入,并将输出视为此软件测试方法的一部分。
它可以识别系统对意外的用户活动、响应时间、可用性困难和可靠性问题的响应。
黑匣子测试是一种强大的方法,因为它使系统端到端运行。
测试人员可以复制用户的活动以确定系统是否实现了承诺,就像最终用户“不关心”系统的设计和结构并希望得到正确的回答一样。
您可以通过对黑匣子进行测试来确定程序或APP应用程序是否提供广告功能。
黑匣子测试将检查所有单独的组件,包括用户界面和易用性、Web服务器或APP应用程序服务器、数据库、依赖关系和集成系统。
此类测试的其他名称包括“不透明框”、“封闭框”、“基于规范”和“对视”测试。
黑匣子测试类型以下为黑匣子测试类型:
功能测试功能测试主要集中在软件的主要功能以及关键组件和整个系统的集成。
该方法包括冒烟测试/运行状况测试、集成测试和系统测试,以测试软件的独特功能和特性。
此测试的典型示例是确保只有具有正确凭据的用户才能登录,而具有错误凭据的用户不能登录。
非功能测试非功能测试超出了特性和功能的测试。
不是确定软件是否可以操作,而是检查操作是如何完成的。
这些测试将检查软件的可用性和可理解性、高峰性能、与相关设备和浏览器的兼容性以及安全威胁漏洞。
回归测试对程序的功能部分进行回归测试,以确定新版本是否显示功能回归或恶化。
进行此测试是为了确定特定功能在最近的版本中是否不再正常工作,或者以前有效的操作目前是否无法正常工作。
黑匣子测试技术以下为不同的黑匣子测试技术。
1 .测试人员可以对可用输入“分区”进行分组,并只测试每个分区中的一个“抽样”输入,而不是测试所有可输入的输入。
测试人员只需检查“18岁以下”组的1个出生年月日和“18岁以上”组的1个日期即可。 例如,如果系统请求用户的出生年月日,且所有未满18岁的用户都有相同的响应,则18岁和18岁以上的用户可能有不同的响应。
2 .边缘值分析系统在给定边界值附近的独特行为容易被受试者检测到。
例如,一个字段可能只能输入0到99之间的数字。
边界值(-100、-99和-100 )为测试人员验证正确输入提供了方便的方法。
3 .决策表模拟有很多系统根据一些输入提供结果。
找到这些“规则”或条件集后,测试人员可以确定每个规则的效果,并创建相应的测试用例。
4 .状态变化测试从一个状态迁移到另一个状态时,特定系统会引起很多响应。
一个典型的例子是用户可以进行身份验证,但在失败了规定次数后锁定帐户的登录系统。
如果测试人员确定了状态转换机制,则可以构建测试用例来检测系统在状态之间转换时的情况。
例如,如果在五次失败的登录尝试后系统锁定了帐户,测试用例将看到第六次登录尝试时发生的情况。
5 .错误地推测该技术与测试开发者在构建类似系统时经常犯的错误有关。
例如,测试人员可以传送包括开发者是否处理字段中的null值、数值字段中的文本或纯文本字段中的数值、和输入的清洁——影响安全的可执行代码的用户输入
错误的推测包括测试可能影响测试系统的已知软件漏洞。
黑匣子测试的优点以下是黑匣子测试的优点:
1 .测试用例快速发展测试者只对APP应用的图形用户界面( GUI )感兴趣。
因此,它不会检查源代码中是否存在错误。
2 .可以将黑匣子软件测试外包,因为测试不需要外包测试人员了解代码。
3 .最终用户体验测试将从最终用户的角度进行。
4 .批评测评人员不熟悉代码,对代码功能没有成见。
黑匣子测试的缺点以下是黑匣子测试的缺点:
1 .可以重复测试过程,其中测试路径可以被省略或重叠,或者可以完全省略特定路径。
如果软件设计师已经在运行测试,它们可能不需要。
2 .部分申请可能不会被审查。 由于测试人员不具备编码知识,因此可能无法检查某些APP应用的功能和特性。
3 .需要准确明确的测试规范的测试人员必须决定需要测试什么才能确保过程符合最高质量标准。
结论黑匣子测试对你的武器库有帮助,但不仅如此。
可能有助于建立对项目质量的信任。
尽管如此,如果存在未记录的需求,则不会使用黑匣子测试来确定错误的优先级。