一致性测试
一致性测试是一种软件测试技术,用于证明软件系统符合IEEE、W3C或ETSI定义的标准和规则。一致性测试也称为一致性测试。
涉及一些技术方面,但有意包括:
- 性能
- 功能
- 健壮性
- 互操作性
- 系统的行为
在本教程中,将了解-
- 什么是一致性测试?
- 一致性测试的类型
- 为什么我们需要一致性测试?
- 需要测试什么?
- 何时以及如何执行合规性测试?
- 符合性测试流程/程序:
- 一致性测试的优势:
- 一致性测试的缺点:
- 移动系统的一致性测试:
一致性测试的类型
一致性测试可以是逻辑的,也可以是物理的,它包括以下类型的测试;
- 符合性测试
- 负载测试
- 压力测试
- 容量测试
为什么我们需要一致性测试?
- 要检查系统的需求满足情况,执行以下操作
- 检查系统文档是否齐全,是否有必要
- 根据规范检查开发、设计和评估
需要测试什么?
- 实现所依据的标准
- 要开发的系统的调用
- 规格范围
- 规范目标
合规性测试是由管理层发起的,管理层对团队及其对标准、规范和程序的理解完全有把握。
为了构建高效的应用程序,应该清楚地制定标准和规范,以避免模棱两可。如果没有,那么一致性测试本身就很有用,可以采取必要的步骤使其相关和可靠。
何时以及如何执行合规性测试?
- 当我们需要检查系统相对于需求规范的总体一致性、完整性和正确性时,将执行一致性测试
- 有几种执行它的方法与我们的开发生命周期阶段没有太大不同,例如;
- 分析需求规范
- 准备测试计划
- 准备测试用例及其目的
- 为准备好的测试设计创建文档
- 我们需要关注规范的一些附加方面,比如子集,它们通常有三种类型,比如“Profile”、“Level”和“Modules”。
- 配置文件是规范的子集,它包括满足要求的系统功能,并且专用于特定的用户组
- 级别是规范的嵌套子集,其中级别1表示基本规范,级别2表示级别1+附加/新功能
- 模块是高度相关的标准和规范的集合
一致性测试过程
一致性测试过程或符合性测试过程是确保软件应用程序的效率、性能和避免未来风险所必需的。有效的一致性测试包括以下循序渐进的过程:
- 分析标准和规范
- 选择测试工具和测试套件
- 设计测试程序
- 检查必要的验证
- 适应相关测试政策和认证
让我们快速查看合规性/符合性测试过程的图表表示,以便更好地理解:
借助用例,这个过程会更容易理解;
如上所述,一致性测试有时被称为一致性测试,但仍然有一些基本事实使一致性测试不同于一致性测试。
我们将回顾两者之间的比较和对比;
一致性测试 | 符合性测试 |
---|---|
一致性测试是一种形式化、精确化的测试标准方式 | 符合性测试是一种非正式且不太精确的测试标准方式 |
一致性认证仅适用于拥有官方证书颁发机构的操作系统 | 提供POSIX(可移植操作系统接口)的单个API的操作系统被认为是兼容的 |
一致性测试用于测试完全支持给定标准的系统 | 符合性测试用于测试为某些给定标准提供支持的系统 |
一致性测试的优势:
- 确保规范的正确实现
- 确保可移植性和互操作性
- 提供对标准的适当利用
- 使确保接口和功能按预期工作成为可能
- 有助于识别需要符合的领域和不符合的领域,例如语法和语义
一致性测试的缺点:
与其他类型的测试一样,一致性测试也有一些很难执行的任务,可能会成为一项挑战。下面列出了其中一些;
- 为了有效地执行一致性测试,需要识别需要测试的系统类以及适当的方法
- 将规范分类为配置文件、级别和模块
- 预定义的值
- 设计扩展、选项和方法以成功运行测试流程。
一致性测试:关键视图:
一致性测试有一些领域需要额外的关注和知识才能成功实现;
- 最适合的测试方法
- 选择将自动执行测试过程的测试工具
- 对只显示不符合项而不显示符合项的符合性测试有清晰的理解
- 一致性测试程序的设计与实现
- 定义应该以多正式的形式执行它
- 政策和法规
移动系统的一致性测试:
就像其他类型的软件测试一样,一致性测试也可以针对移动系统进行。系统组装完成后,在部署之前通过一致性测试检查其使用情况。
根据GSM或CDMA等网络的类型,执行测试以实现一致性和互操作性。
这些测试可能包括:
- 协议测试
- 安全/安保测试
- SIM卡测试
- 无线电 Frequency(RF) 测试
- 音频测试
用例图示例
下面的用例图显示了如何对已部署的移动系统执行一致性测试;
此外,对于SIM卡的两个阶段的测试,可以按照以下方式进行阐述;
- 密码验证
- 拨打电话
对于这样的系统,可能有两种情况
1. 呼叫成功
2. 呼叫失败
同样,对于协议测试,考虑以下用例;
下面的测试用例模板将帮助了解如何编写协议测试的测试用例
测试ID | 测试场景 | 测试步骤 | 测试数据 | 预期结果 | 实际效果 | 状态 | 备注 |
---|---|---|---|---|---|---|---|
PT001 | 协议没有死锁 | 从通话过程开始 | _ | 应成功建立通信 | 已成功建立通信 | 通过 | _ |
PT002 | “Ping”命令在超时时运行正常 | 在命令提示符下以‘ping-w’的形式输入Ping命令 | Ping 1000 | 应显示消息“传输成功”。 | 消息显示“传输成功”。 | 通过 | _ |
PT003 | 数一数不是。‘ECHO’求的数量 | 在命令提示符下以‘ping-n’的形式输入Ping命令 | Ping 4 | 应使用32字节数据开始ping 0.0.0.4,并应显示消息“Transmit Successful”(传输成功)。 | 使用32字节数据开始ping 0.0.0.4,但显示消息“传输失败”。 | 失败 | 语义/功能错误 |
PT004 | 任何状态都可以从任何状态到达 | 退出状态并返回到上一状态或下一状态 | _ | 应成功更改状态 | 已成功更改状态 | 通过 | _ |
这些术语表明一致性测试对于测试技术标准的实现也很有用。
为了给测试过程带来一致性,正在定义测试用例。根据网络的类型,可以定义和执行数百个测试用例,以确保移动系统按照需求规范工作。
总结:
- 一致性测试也称为类型测试,是一种正式的测试方式
- 用于确定系统是否遵循需求规范
- 包括压力测试、负载测试、卷测试和符合性测试
- 也被认为是符合性测试,但两者之间有基本区别
- 一致性测试计划、测试方法和测试工具是一致性测试最关键的几个领域
- 通过软件工程中的一致性测试来实现对标准利用率和互操作性的保证。
- 对移动系统也执行一致性测试。