软件测试词典

首页

A

验收测试 可访问性测试 主动测试 实际结果 临时测试 老化测试 敏捷测试 全对测试 Alpha 测试 API 测试 Arc 弧测试 异常测试 断言测试 审计测试 自动化软件测试

B

向后兼容性测试 基线工件 基础路径测试 基础测试集 调试 行为测试 基准测试 Beta 测试 大爆炸测试 二进制可移植性测试 黑盒测试 自下而上测试 边界测试 分支测试 广度测试 Bug测试 构建验证 业务流程 业务需求

C

能力成熟度模型 捕获/重放工具 因果图 代码覆盖率 代码冻结 代码检查 代码审查 代码演练 基于代码的测试 代码驱动测试 无代码测试 比较测试 兼容性测试 合规性测试 并发性测试 条件覆盖测试 配置测试 一致性测试 上下文驱动测试 控制流路径 转换测试 正确性 覆盖项目 循环复杂度

D

数据完整性测试 数据驱动测试 数据流测试 数据库测试 调试 决策覆盖测试 缺陷 缺陷记录和跟踪 缺陷生命周期 Delta 发布 依赖性测试 深度测试 破坏性测试 开发环境 文档测试 域测试 耐久性测试 动态测试

E

模拟器 端到端测试 耐久性测试 准入标准 等价分区测试 错误 错误猜测 错误植入 详尽测试 退出标准 预期结果 探索性测试

F

故障转移测试 失败 故障 故障注入测试 可行路径 功能测试 功能分解 功能要求 功能测试 模糊测试 前端测试

G

玻璃盒测试 全球化测试 Gorilla 测试 灰盒测试 GUI 测试

H

测试工具 启发式测试 混合集成测试

I

实施测试 增量测试 独立测试 不可行路径 检查 安装/卸载测试 集成测试 接口测试 国际化测试 系统间测试 互操作性测试 隔离测试 问题

K

关键字驱动测试 关键绩效指标 已知问题

L

LCSAJ 测试 负载生成器 负载测试 本地化测试 逻辑覆盖率测试 循环测试

M

可维护性 手动测试 大型机测试 基于模型的测试 修改条件测试 模块化驱动测试 猴子测试 突变测试

N

负面测试 非功能性测试 非破坏性测试

O

操作测试 正交阵列测试

P

配对测试 成对测试 并行测试 部分测试自动化 被动测试 路径测试 同行评审 渗透测试 性能测试 试点测试 可移植性测试 积极测试 后置条件 前提条件 预测结果 优先级 流程周期测试 渐进式测试 原型测试

Q

质量保证 质量控制 质量管理

R

随机测试 恢复测试 回归测试 候选版本 发布说明 可靠性测试 需求测试 基于需求的测试 需求可追溯性矩阵 结果 重新测试 Review 审查 风险测试 风险管理 根本原因

S

安全性测试 健全性测试 可扩展性测试 场景测试 时间表 Scrum 测试 脚本 安全测试 模拟 冒烟测试 浸泡测试 峰值测试 软件需求规范 稳定性测试 状态转换 静态测试 统计测试 存储测试 压力测试 结构测试 结构化演练 存根 符号执行 语法测试 系统集成测试 系统测试 被测系统

T

技术评审 测试方法 测试自动化 测试基础 测试平台 测试用例 测试用例设计技术 测试套件 测试完成标准 测试完成报告 测试完成矩阵 测试数据 测试数据管理 测试驱动开发 测试驱动程序 测试环境 测试执行 测试管理 测试成熟度模型 测试计划 测试步骤 测试策略 测试工具 线程测试 自上而下的集成测试 全面质量管理 可追溯性

U

单元测试 无法访问的代码 可用性测试 用例测试 用户验收测试 用户界面测试

V

V 模型 验证测试 验证测试 虚拟用户 容量测试 漏洞测试

W

Web 应用程序测试 白盒测试 工作流测试

有用的资源

有用的资源 讨论


软件测试 - 漏洞测试

软件测试确保零缺陷,并检查软件是否按照用户要求构建。在验证软件时,确认没有可用于黑客攻击或未经授权访问信息和其他资源的安全漏洞非常重要。执行漏洞测试是为了检测所有安全漏洞。

什么是软件漏洞测试?

漏洞测试是识别安全瓶颈以尽量减少软件中的威胁或攻击的过程。它涉及检测和减少软件中可被黑客利用的易受攻击区域。它是一种非常重要的测试技术,它为用户提供了非常高的安全级别,防止可能的攻击和未经授权的信息访问。它也被称为漏洞评估。

我们以电子商务应用程序为例,由于它处理货币交易,因此发生恶意攻击的可能性更高。此类软件需要接受漏洞测试,以确认其对用户而言是安全的,并且客户信息不会受到泄露。漏洞测试主要基于数据、网络和主机。

如果不遵守围绕软件安全功能的开发流程、测试用例效率低下以及缺少测试场景,软件中就会出现漏洞,这是由于内部设计和架构存在缺陷造成的。

为什么要进行软件漏洞测试?

进行漏洞测试的原因如下 −

  • 漏洞测试会暴露软件中的安全漏洞,开发人员会修复这些漏洞以添加其他安全功能。
  • 漏洞测试可确保软件更安全、更可靠。它会检查黑客是否有未经授权的信息访问。
  • 漏洞测试会扫描平台、软件和网络,以检测由于设计缺陷而导致的无意信息泄露。它通过重新设计整个软件来帮助开发人员解决这些问题。
  • 漏洞测试确定了软件设计中的能力,并帮助开发人员根据严重性对它们进行优先排序。
  • 漏洞测试确保软件中的密码选项足够强大,并且足够安全,不会被黑客利用。

软件漏洞测试流程

漏洞测试流程如下所列 −

步骤 1 − 第一步涉及规划漏洞测试流程。它包括从测试开始到结束的所有内容。它包括基于数据的漏洞测试,其中进行验证以识别数据安全中的瓶颈。它还包括基于网络的漏洞测试(用于识别网络问题)和基于操作系统的漏洞测试(用于识别操作系统中的安全瓶颈)。

在此步骤中,还确定了漏洞测试的范围,其中包括对软件内部和外部设计的验证。所有这些都可以使用黑盒白盒灰盒测试技术来实现。

步骤 2 − 第二步涉及收集每一条信息,这些信息可能有助于检测网络、操作系统、黑客程序、未经授权的访问等方面的最大弱点。它们还有助于破解软件的安全功能。

步骤 3 − 第三步涉及使用手动和自动技术创建涵盖易受攻击区域所有场景的测试用例。此外,为易受攻击区域分配低、中、高优先级,以帮助开发人员通过重新设计软件来修复它们。通过这种方式,每个易受攻击的区域都得到了照顾,从而开发出安全的软件。

步骤 4 − 第四步涉及提供一份详细的报告,涵盖软件中的所有易受攻击区域,并与开发团队共享以供进一步分析。

步骤 5 −第五步是确定补救措施,然后与开发团队分享。

软件漏洞扫描器的类型

下面列出了不同类型的软件漏洞扫描器 −

#1) 基于主机的 − 主机是指用于通过互联网连接其他服务器并与它们交互的 Web 服务器。基于主机的扫描器可检测操作系统、工作站等中的漏洞。它还可以评估由于未经授权访问数据而对软件造成的损害程度,并解决这些问题。

#2) 基于网络的 − 它可检测软件通过互联网通信为用户提供服务时网络上暴露的漏洞。它通过扫描网络设备等上的应用程序来识别有线和无线网络上的所有类型的安全攻击。

#3) 基于数据库 − 它扫描数据库以识别更容易受到攻击的易受影响区域,然后找到保护它们的程序。

#4) 基于应用程序 − 它扫描应用程序以检测新的和已经存在的漏洞,并衡量它们可能造成的损害程度。网络攻击是应用程序上最常见的安全攻击。

#5) 基于无线 − 它扫描端口并检测网络中的安全漏洞。一旦检测到漏洞,就会与开发团队共享,以便使用加密或其他技术进行修复。

软件漏洞测试的不同工具

软件漏洞测试的不同工具如下 −

  • Intruder
  • Nexus
  • Frontline
  • Nessus
  • Acunetix

软件漏洞测试和渗透测试之间的区别

Sr.No 漏洞测试 渗透测试
1 用于检测软件中的易受攻击区域。 用于检测软件中的薄弱区域。
2 主要通过自动化完成。 主要通过手动完成。
3 用于非紧急系统。 用于紧急系统。
4 被称为漏洞评估。 它被称为渗透测试。
5 每当有新的 IT 资产被引入系统时,就会进行一次测试。 每年进行一次。
6 它作用于基于主机的扫描、基于网络的扫描、基于应用程序的扫描、基于数据库的扫描和基于无线的扫描等领域。 它只作用于软件。

软件漏洞测试的优势

软件漏洞测试的优势如下 −

  • 漏洞测试通过防止恶意攻击来提高软件的安全性,信息处理不当等。它可以检测到所有的安全漏洞。
  • 漏洞测试采用自动化方法,因此速度快,耗时少。
  • 漏洞测试确保软件完全安全,并能满足客户要求。
  • 借助扫描仪和自动化工具,漏洞测试很容易执行。
  • 有大量的扫描工具应用于应用程序、网络、数据库等。它们大多是付费的,随时可用。

软件漏洞测试的缺点

软件漏洞测试的缺点如下 −

  • 漏洞测试成本高昂,增加了项目成本。
  • 如果漏洞测试未能检测到新的漏洞,则软件无法实现所需的安全性。
  • 漏洞的成功率由于每天都会出现新的安全威胁,因此软件漏洞测试的难度非常低。

结论

至此,我们对软件漏洞测试教程的全面介绍就到此结束。我们首先描述了什么是软件漏洞测试、为什么要进行软件漏洞测试、软件漏洞测试的过程是什么、软件漏洞扫描器有哪些不同类型、软件漏洞测试有哪些不同工具、软件漏洞测试和渗透测试有什么区别、软件漏洞测试的优点是什么、软件漏洞测试的缺点是什么。这将使您对软件漏洞测试有深入的了解。明智的做法是继续练习您学到的知识并探索与软件测试相关的其他知识,以加深您的理解并拓展您的视野。