软件测试中的合规性测试(一致性测试)

一致性测试

一致性测试 是一种软件测试技术,用于验证软件系统是否符合 IEEE、W3C 或 ETSI 定义的标准和规定。一致性测试的目的是确定被测系统如何确认满足特定标准的个别要求。一致性测试也称为合规性测试。

它可能涉及一些技术方面,但有意包括:

  • 性能
  • 功能
  • 鲁棒性
  • 互操作性
  • 系统行为

一致性测试的类型

一致性测试可以是逻辑的或物理的,它包括以下类型的测试;

一致性测试
一致性测试

为什么我们需要一致性测试?

  • 检查系统是否满足要求
  • 检查系统文档是否完整并具备必要的
  • 检查开发、设计和评估是否符合规范

我们需要测试什么?

  • 实施所依据的标准
  • 待开发系统的调用
  • 规范范围
  • 规范目标

一致性测试由管理层发起,完全保证团队及其对标准、规范和程序的理解。

为了构建高效的应用程序,应明确提及标准和规范以避免歧义。如果没有,则一致性测试本身有助于采取必要步骤使其相关且可靠。

何时以及如何进行一致性测试?

  • 当我们需要检查系统的整体一致性、完整性和正确性时,需要根据需求规范进行一致性测试
  • 执行此操作的方法有几种,与我们的开发生命周期阶段没有太大区别,例如;
  • 分析需求规范
  • 准备测试计划
  • 准备测试用例及其目的
  • 为准备好的测试设计创建文档
  • 我们需要关注规范的一些其他方面,例如子集,它们通常分为“配置文件”、“级别”和“模块”三种类型。
  • 简介 是规范的一个子集,其中包括系统满足需求的功能,专用于特定用户群
  • 楼层 是嵌套的规范子集,其中 Level1 表示基本规格和 Level2 表示级别 1 + 附加/新功能
  • 科目 是高度相关的标准和规范的集合

一致性测试流程

一致性测试流程 或合规性测试过程对于确保软件应用程序的效率、性能和避免未来风险是必要的。有效的一致性测试包括以下逐步过程:

  1. 分析标准和规范
  2. 选择测试工具和测试套件
  3. 设计测试程序
  4. 检查必要的验证
  5. 调整相关测试政策和认证

为了更好地理解,让我们快速看一下一致性/合规性测试过程的图表:

一致性测试流程
合规性测试流程

借助用例,这个过程将更容易理解;

一致性测试流程

上面提到,一致性测试有时也称为合规性测试,但仍有一些基本事实使得一致性测试不同于合规性测试。

我们将回顾两者之间的比较和对比;

一致性测试 一致性测试
一致性测试是测试标准的正式且精确的方法 合规性测试是一种非正式且不太精确的测试标准的方法
一致性认证仅适用于拥有官方认证机构的操作系统 提供 POSIX(可移植 Opera系统接口)被认为是兼容的
一致性测试用于测试对给定标准提供全面支持的系统 合规性测试用于测试支持某些给定标准的系统

一致性测试的优势

  1. 确保规范的正确实施
  2. 确保可移植性和互操作性
  3. 提供适当的标准利用
  4. 确保接口和功能按预期运行
  5. 帮助识别需要遵守的领域以及不需要遵守的领域,例如语法和语义

一致性测试的缺点

与其他类型的测试一样,一致性测试也有一些相当难以执行的任务,可能成为一项挑战。其中一些列在下面;

  1. 为了有效地进行一致性测试,需要确定需要测试的系统类别以及合适的方法
  2. 将规范分类为配置文件、级别和模块
  3. 预定义值
  4. 设计扩展、选项和方法以成功运行测试过程。

一致性测试:关键观点:

一致性测试有一些领域需要额外的关注和知识才能成功实施;

  1. 最适合的测试方法
  2. 选择可自动化测试过程的测试工具
  3. 清晰理解一致性测试,仅显示不符合项,而不是符合项
  4. 设计和实施一致性测试程序
  5. 定义应如何正式执行
  6. 政策法规

移动系统一致性测试

与其他类型的软件测试一样,一致性测试也可以用于 联络号码 系统。系统组装完成后,在部署之前要通过一致性测试检查其使用情况。

根据 GSM 或 CDMA 等网络类型进行测试以实现一致性和互操作性。
这些测试可能包括;

  • 协议测试
  • 安全/安全测试
  • SIM卡测试
  • 射频(RF)测试
  • 音频测试
  • 特定吸收测试

用例图示例

以下用例图显示了如何对已部署的移动系统执行一致性测试;

用例图示例

此外,可以按以下方式详细说明 SIM 卡测试的两个阶段;

  1. 密码验证
密码验证
密码验证
  1. 拨打电话
拨打电话
拨打电话

对于一个系统来说,可能有两种情况,例如

1. 呼叫成功

2. 呼叫失败

同样,对于协议测试,考虑以下用例;

协议测试
协议测试

跟随 测试用例模板 将帮助你理解如何编写测试用例 协议测试

测试编号 测试场景 测试步骤 测试数据 预期结果 实际结果 状态 备注
PT001 协议无僵局 从沟通过程开始 _ 应成功建立通信 通信建立成功 通过 _
PT002 “Ping”命令在超时时正确运行 在命令提示符中输入 Ping 命令“Ping -w” Ping 1000 应显示消息“传输成功。” 信息显示“传输成功”。 通过 _
PT003 计算“echo”请求的数量 在命令提示符中输入 Ping 命令“Ping -n” Ping 4 应该开始使用 0.0.0.4 字节数据 ping 32,并显示消息“传输成功”。 开始使用 0.0.0.4 字节数据 ping 32,但显示消息“传输失败”。 失败 语义/功能错误
PT004 可以从任意状态到达任意状态 退出某个状态并返回上一个或下一个状态 _ 应该成功改变状态 成功改变状态 通过 _

这些术语表明一致性测试对于测试技术标准的实施也很有用。

为了使测试过程统一,需要定义测试用例。根据网络类型,可以定义和执行数百个测试用例,以确保移动系统按照要求规范运行。

结语

  • 一致性测试也称为类型测试,是一种正式的测试方式
  • 用于确定系统是否遵循需求规范
  • 它包括压力测试、负载测试、容量测试和合规性测试
  • 它也被视为合规性测试,但两者之间存在根本区别
  • 一致性测试程序、测试方法和测试工具是一致性测试中最关键的领域
  • 通过软件工程中的一致性测试来保证标准的利用和互操作性。
  • 移动系统也进行了一致性测试。