"选择正确的严重性是您对测试环境和漏洞影响的理解程度的重要指标。"
动力
报告功能性漏洞并不容易,选择其严重性甚至更具挑战性;然而,在本文中,您将找到在选择功能性漏洞的严重性时应该提出的三个关键问题,这是确定漏洞的一个重要方面。
这三个基本问题也有示例,以帮助您理解它们以及如何在实际测试场景中应用它们。
什么是功能性漏洞?
让我们将功能性漏洞视为影响元素的使用或使与您正在测试的网站或应用程序互动成为可能的任何缺陷。
功能性漏洞与软件的功能性相关。示例:按钮无法提交表单,搜索不响应用户输入,与元素互动后应用程序崩溃。每当执行操作时,网站/应用程序都不会如预期响应。这些缺陷可能会或可能不会影响所有终端用户;如果会影响,它们可能不会以相同的方式影响它们。
另一方面,根据环境的状态(生产/线上或分段/测试版),漏洞的影响不能被视为相同。举个例子:在生产网站上发现的漏洞 - 任何人都可以在互联网上找到的网站 - 对用户和客户的影响将更为负面,而在不对真实用户开放的分段环境中发现的漏洞则不同。
漏洞严重性意味着什么?
有时上述缺陷的负面影响比其他更重要,或者它们对用户的影响方式相对温和。因此,修复此类漏洞的紧迫性不同,因此严重性也不同。这种影响还取决于我们进行测试的环境。
我们对功能性漏洞有三个严重性级别:低、高和临界。您可以在我们的文章中找到详细的解释,功能性漏洞.
对于探索性测试,我们可以考虑三个关键因素,以区分这三个严重性,并制定更具断言性的分类。
在选择严重性之前,请自问这三个关键问题
漏洞是有上下文的,因此在产品测试的上下文中需要理解和回答有关如何确定漏洞的正确严重性的三个问题(我们在下面分享)。在单击"提交"按钮之前,请回答它们。
这个网站或应用程序的功能是什么?
以举例说明,如果您正在测试一个电子商务网站,查找商品、将其放入购物车并启动结账过程是该特定网站的核心过程,而如果相反,您正在测试一个娱乐应用程序,核心功能是播放、观看和能够与视频播放器控件进行互动。漏洞对终端用户和/或公司业务有何影响?
如果测试范围仅包括一个或很少的功能,请首先自问您正在测试哪个功能,以便您可以可视化其在网站或应用程序中的作用。假设范围内的功能是注册流程。在一个电子商务网站上注册的流程和在一个娱乐应用程序上注册的流程是否相同?最有可能的答案是否定的。
根据产品,有时需要提供的信息对于向用户提供特定内容至关重要。例如,在电子商务网站上注册时,用户需要提供的最重要的问题可能只是他们的年龄(例如,是否年满18岁);而对于娱乐应用程序,可能需要提供其他信息,比如确认用户是父母还是孩子,以便不向未成年人提供成人内容。
是否有方法绕过使用受损功能?如果答案是肯定的,那么这种绕过是否直观、简单或有点困难以找到或执行?
是否有方法绕过使用受损功能?如果答案是肯定的,那么这种绕过是否直观、简单或有点困难以找到或执行?
换句话说,如果用户可以找到使用受损功能或以不符合预期的方式工作的其他方法,这称为绕过。绕过应该被确定为受损功能,因为它提供了确定漏洞正确严重性的关键信息。
因此,每当您发现漏洞时,您可以查找用户需要采取的不同路径,以完成未能完成任务的功能。了解在其中花费的工作和时间量对于选择问题的正确严重性至关重要。如果您将此信息与产品功能在测试中或该产品内的功能的重要性相关联,问题的正确影响将对您明显。
通常情况下,如果您在网站上遇到一个可以通过刷新页面来修复的漏洞,那么功能漏洞的严重性就较低,因为刷新页面是一种直观且易于使用的绕过方式。换句话说,大多数终端用户都会尝试相同的操作,并且修复问题只需一次点击。
为了做到这一点,了解产品(网站/应用程序)及其设计是至关重要的,以便您可以轻松地对要报告的行为进行有根据的猜测。
如果您在测试时继续提出这些问题,将会引导您选择漏洞的正确严重性的正确路径。
在哪里可以找到更多关于更好理解严重性的指导?
我们不断创建内容,以帮助您了解我们 Discord 服务器 Test IO 社区 上的工作,或者您可以在我们的社交媒体渠道上查找,其中包括一个显示有关固定严重性的场景的电子表格。
您可以在这里查看此电子表格,漏洞评估表!您可以尝试在加入的任何测试上查找此文件中的问题;通过这种方式,您将更好地理解它们的严重性。
另一方面,我们还使用我们的 Facebook 和 YouTube 来帮助您进行测试,比如节目❝如何选择功能性漏洞的正确严重性❞,以及了解 Team Leader 需要采取哪些措施来解决功能性漏洞的严重性。这里有示例,您可以关注它们背后的思考过程,并查看这3个关键问题的实际应用!