什么是端到端测试?E2E 示例

端到端测试

端到端测试是一种软件测试方法,用于验证整个软件从开始到结束,以及其与外部接口的集成。端到端测试的目的是测试整个软件的依赖关系、数据完整性以及与其它系统、接口和数据库的通信,以模拟完整的生产场景。

除了软件系统,它还验证来自其他上游/下游系统的批处理/数据处理。因此得名“端到端”。端到端测试通常在功能测试和系统测试之后执行。它使用实际生产数据和测试环境来模拟实时设置。E2E 测试也称为链式测试

END-To-END Testing

为什么需要端到端测试?

端到端测试验证完整的系统流程,通过检测问题并增加子系统的测试覆盖率来提高信心。现代软件系统复杂且与多个子系统互连,这些子系统可能与当前系统不同。整个系统可能因任何子系统的故障而崩溃,这是端到端测试可以避免的主要风险。

端到端测试流程

下图概述了端到端测试流程。

 END-To-END Testing Process

端到端测试涉及的主要活动包括:

  • 研究端到端测试需求
  • 测试环境设置和硬件/软件要求
  • 描述所有系统及其子系统流程。
  • 描述所有系统的角色和职责
  • 测试方法和标准
  • 端到端需求跟踪和测试用例设计
  • 每个系统的输入和输出数据

端到端测试工具

1) testRigor

testRigor在端到端测试方面是行业领导者。在网页UI、原生和混合移动应用、移动浏览器和API上无缝创建无代码测试。轻松测试电子邮件和短信,测试下载的.XLS、.DOC、.PDF等文件。

功能

  • 用纯英语编写无代码测试。
  • 一个测试中包含Web + 移动 + API 覆盖。跨平台和跨浏览器支持。
  • 创建测试比Selenium快15倍。
  • 将测试维护成本降低高达99.5%。
  • testRigor安全且符合SOC 2 Type 2标准。
  • 与CI/CD和测试用例管理集成。
  • 运行数千个测试并在30分钟内得到结果。

访问 testRigor >>

如何创建端到端测试用例?

Create End-to-End Test Cases
端到端测试用例

端到端测试设计框架由三部分组成

  1. 构建用户功能
  2. 构建条件
  3. 构建测试用例

让我们详细看看它们: –

构建用户功能

构建用户功能应完成以下活动

  • 列出系统的功能及其相互连接的组件
  • 列出每个功能或特性的输入数据、操作和输出数据
  • 识别功能之间的关系
  • 确定功能是否可重用或独立

例如 - 考虑一个场景,您登录您的银行账户并向其他银行(第三方子系统)的另一个账户转账。

  1. 登录银行系统
  2. 检查账户余额
  3. 从您的账户向其他银行账户(第三方子系统)转账
  4. 检查您最新的账户余额
  5. 退出应用程序

基于用户功能构建条件

以下活动作为构建条件的一部分执行

  • 为每个定义的用户功能构建一组条件
  • 条件包括序列、时间和数据条件

例如 - 检查更多条件,如

登录页面

  • 无效用户名和密码
  • 使用有效用户名和密码检查
  • 密码强度检查
  • 错误消息检查

余额

  • 24小时后检查当前余额。(如果转账发送到不同的银行)
  • 如果转账金额大于当前余额,检查错误消息

构建测试场景

为定义的用户功能构建测试场景

在这种情况下,

  • 登录系统
  • 检查银行余额
  • 转账银行余额

构建多个测试用例

为每个定义的场景构建一个或多个测试用例。测试用例可能包括每个条件作为一个单独的测试用例。

端到端测试的指标

以下是一些(众多)用作端到端测试示例的指标

  • 测试用例准备状态:它显示测试用例准备进度与计划的对比
  • 每周测试进度- 提供每周测试完成百分比的详细信息 - 失败、未执行和已执行与计划执行测试的对比。
  • 缺陷状态和详细信息- 它显示每周开放和关闭缺陷的百分比。此外,按严重性和优先级分类的每周缺陷分布
  • 环境可用性 –每日“正常运行”的总小时数 / 每日计划用于测试的总小时数

端到端测试与系统测试

端到端测试 系统测试
验证软件系统以及互连的子系统 仅根据需求规范验证软件系统。
它检查完整的端到端流程。 它检查系统功能和特性。
所有接口、后端系统都将纳入测试范围 功能测试和非功能测试都将纳入测试范围
它在系统测试完成后执行。 它在集成测试之后执行。
端到端测试涉及检查外部接口,这可能难以自动化。因此,首选手动测试 系统测试可以执行手动和自动化测试

结论

在软件工程中,软件测试中的端到端测试是验证软件系统及其子系统的过程。这种测试中最大的挑战是充分了解整个系统以及相互连接的子系统。