跳转到主要内容

漏洞类型 - 概要

什么是漏洞,我们如何区分不同的漏洞类型,以及如何确定适合您的漏洞?

Nikola Jonic avatar
作者:Nikola Jonic
本周更新

错误 是与软件相关的问题。如果网站或应用程序的某些功能未按预期工作,这种“错误”就被称为错误。在 Test IO,我们区分以下几种错误类型:

功能性错误

功能性错误与软件的功能表现相关,例如按钮无法提交表单、搜索对用户输入无响应、应用程序崩溃等。每当您执行操作时,若网站或应用程序未按预期响应,就可能存在功能性问题。

如何判断应用程序行为是否为功能性错误?

  • 尝试确认该功能是设计如此,还是确实存在问题。单独测试该功能,并结合其他功能进行测试,以发现潜在差异。

  • 考虑客户的设计意图,有可能产品本身就是按照现有方式实现的。

  • 收集证据,证明某功能未按预期工作,并提供支持您观点的依据。

例如:某网店的功能与您所熟悉的其他网店不同,但这并不意味着该功能存在错误,因为客户有权实现自己的设计。
又如:若您认为某表单字段未被验证且是错误,请确保该字段原本应有验证机制。可以通过展示该字段在某些情况下验证而其他情况下未验证的证据来支持这一说法。若无证据,则属于未经证实的主张。

当视觉或内容问题阻碍功能性时,应将其报告为功能性错误。
如果某功能在不同场景中表现一致且无明显异常,通常视为预期设计(非错误)。


严重性评估

功能性错误的严重性根据多个因素评定:问题对功能的影响、影响范围、是否有解决方案、是否为致命问题、是否会导致显著销售损失,以及与其他同级别错误的比较。

我们将功能性错误分为三种严重性等级:

  • 低级(Low)

    • 对产品使用影响较小。

    • 产品表现出意外行为,但整体使用不受影响。

    • 仅少量用户、产品或项目受影响。

    • 功能或模块损坏或不可用,但存在简单的解决方案。

  • 高级(High)

    • 对产品使用产生严重影响,但主要功能依然可用。

    • 大量用户、产品或项目受影响。

    • 非核心功能损坏或不可用,且无解决方案。

    • 重要功能损坏或不可用,但存在解决方案(故非致命)。

  • 关键级(Critical)

    • 错误阻断应用程序或网站的核心功能。

    • 致命问题阻止用户完成主要流程,如结账流程。

    • 导致客户显著且潜在的销售损失。

我们还准备了案例清单,包含固定严重性级别供参考

内容性错误

内容性错误涉及网站或应用程序的文本、标签、图片、视频、图标、链接和数据等实际内容。常见问题包括:

  • 损坏的链接或图片(404 错误)

  • 常规重定向问题

  • 缺失文本,如空工具提示

  • 缺失内容,如空白区域

  • 内容不一致,如 5 个图标中 4 个有提示,1 个无提示

  • 缺失翻译,如英文网站上出现法文标签

  • 部分产品未出现在搜索结果中,但搜索功能正常运行

  • 数据缺失

请注意,拼写错误不被视为我们平台上的内容错误,且不能作为此类错误提交。

视觉性错误

视觉性错误与网站或应用的图形用户界面有关,包括:

  • 布局问题,如文本或元素错位

  • 响应式设计问题,如一个手机能显示元素,另一个不能

  • 文本或元素无意重叠

  • 文本或元素被截断

  • 任何可以通过 HTML 或 CSS 修复的问题


重复问题

内容性或视觉性问题在多个链接、页面或图片中重复出现时,只需提交一次报告,报告中应说明其他相关受影响的链接或页面。单独为每次出现提交报告会被拒绝。


升级为功能性错误

当内容性或视觉性错误阻碍功能性时,应升级报告为功能性错误;即使问题本身非功能性缺陷。

若功能仍可通过其他途径或选项轻松访问,用户未被实质阻止使用该功能,则问题应保持为内容性或视觉性错误。

例如,导航菜单、页眉、页脚或面包屑导航中的链接问题,通常被视为低级功能性错误。


可用性建议

可用性建议是针对产品使用体验的改进建议,例如:

  • 建议调整按钮位置以提升可达性

  • 建议简化表单以减少用户输入工作量

  • 建议增强搜索功能以优化用户体验

这类建议不属于错误类型,但可帮助客户改进产品。

这是否解答了您的问题?