什么是端到端测试?

这篇具有很好参考价值的文章主要介绍了什么是端到端测试?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 什么是端到端测试

端到端测试(End-To-End Testing, 简称E2E测试)是一种从头到尾测试整个软件产品以确保应用程序流程按预期运行的技术。它定义了产品的系统依赖性,并确保所有集成部分按预期协同工作。

端到端测试的主要目的是通过模拟真实用户场景并验证被测系统及其组件的集成和数据完整性,主要从最终用户的体验进行测试。

2. 端到端测试的模型

在我们当前的业务实践中,端到端测试由测试同学主导编写,用例代码和业务模块独立仓库管理。

下面按照用户使用银行卡申购指数基金为例,说明端到端测试的依赖关系:

什么是端到端测试?

 

可以看到,端到端测试的用例模块是跟业务模块独立存在的,并且逻辑也比集成测试用例和接口测试都要复杂,通过模拟真实用户行为、打通系统全周期的测试方式,来验证系统的全链路流程。

3. 端到端测试的优点

  1. 扩大测试覆盖范围
  2. 确保应用程序的正确性
  3. 缩短发布时间
  4. 降低成本
  5. 检测Bug
  6. 通过添加比其他测试方法(如单元和功能测试)更详细的测试案例,帮助团队扩大他们的测试范围。
  7. 通过运行基于终端用户行为的测试用例,确保应用程序的正确执行。
  8. 帮助发布团队缩短上市时间,允许他们自动化关键用户路径。
  9. 通过减少测试软件的时间,降低构建和维护软件的总体成本。

4. 端到端测试的挑战

端到端测试也不是万能的,任何收益必然伴随着成本。端到端测试的挑战如下:

4.1 编写耗时长

端到端测试需要对产品服务流程有完整的了解才能编写测试用例,因此编写的耗时很长。如果你的产品属于大型产品,那用户在产品中就有很多的浏览途径。我们不能针对每个路径进行测试。
所以,通常做法是更频繁地使用单元测试、接口测试,只对最高优先级的用户工作流使用端到端测试。

4.2 测试用例设计难度大

因为端到端测试是模拟用户的真实行为,因为在设计这些测试用例时就需要考虑多许多因素。
比如,一个在多浏览器运行的web程序,每个浏览器都有不同的规范。这意味着我们需要针对不同浏览器编写测试。时间成本很高。
在开发过程中,不能依赖端到端测试来快速寻找代码反馈,而是应该使用单元测试和接口测试。

4.3 容易终端且难以维护

端到端测试因为要走完完整流程,流程长,涉及系统多,非常容易中断,用例的前置依赖也非常多,这些都强依赖一个稳定的服务测试环境。整体维护成本非常高。

4.4 站在用户角度

用户不是在体验功能,而是通过产品解决他们的某些问题。所以端到端测试应该侧重于如果有效有效地解决用户问题。
并不是所有的开发团队都详细了解用户意图的。所以在开发期间就必须尽快部署,快速收集用户反馈。

5. 端到端测试的最佳实践

要进行端到端测试,遵循以下概述的做法至关重要,以确保测试顺利进行和成本可控。

5.1 优先考虑最终用途

  1. 模拟用户:创建测试用例时,像用户一样进行测试。了解第一次使用该应用程序的人的心态。
  2. 易用性:是否容易找到所有选项?特征有标注吗?用户能否通过两步或三步得到他们想要的东西?
  3. 文档先行:使用有助于阐明用户观点的验收测试文档和用户故事,相应地设计测试用例。
  4. 考虑投入产出:将 E2E 测试重点放在失败会导致最大问题的应用程序功能上。从这些特性开始,设计更精细的测试用例来验证它们。

5.2 避免异常测试

E2E 测试最适合用于测试常见的用户场景。对于特殊的用户场景,使用单元测试或接口测试。

5.3 维护整体用例的代码结构

  1. 由于 E2E 测试涵盖整个应用程序,因此测试用例必然很复杂。
  2. 每个系统组件都必须进行测试,这增加了故障点以及调试每个异常的难度。
  3. 结构和组织在 E2E 测试中至关重要。
  4. 通过单元测试和接口测试等底层测试消除简单的错误。

5.4 优化环境和清理机制

  1. 确保测试环境随时可以开始测试。
  2. 测试完成后,务必清理测试数据,以便环境恢复到原始状态,从而准备好再次进行测试。

鉴于端到端测试的重要性,需要从项目一开始就对其进行规划。端到端测试最好手动进行,因为它允许测试人员设身处地为用户着想。如果需要自动化测试,最好将其限制在只需要重复操作的低风险功能上。文章来源地址https://www.toymoban.com/news/detail-466315.html

到了这里,关于什么是端到端测试?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 单元测试与端到端测试——主要区别

    目录 前言: 什么是单元测试? 单元测试生命周期 单元测试的好处 那么它有什么好处呢? 单元测试示例 单元测试的类型 单元测试工具 什么是端到端测试? 端到端测试 端到端测试的主要好处是什么? 端到端测试示例 端到端测试的类型 横向端到端测试 垂直端到端测试 端到

    2024年02月15日
    浏览(49)
  • End-to-end 3D Human Pose Estimation with Transformer

    基于Transformer的端到端三维人体姿态估计 基于Transformer的架构已经成为自然语言处理中的常见选择,并且现在正在计算机视觉任务中实现SOTA性能,例如图像分类,对象检测。然而,卷积方法在3D人体姿态估计的许多方法中仍然保持SOTA性能。受视觉变换器最近发展的启发,我们

    2024年02月08日
    浏览(67)
  • 前端实现端到端测试(代码版)

    playwright 、 cypress 、 selenium 对比 个人初步使用后,推荐playwright 框架作为e2e test 下载 cypress npm install cypress --save-dev package.json npm run cypress:open 使用流程 入门官方文档 npm run cypress:open 左侧端测试,右侧组件测试,点击左侧 选择你需要的浏览器,点击开始 自动打开浏览器,点击左侧s

    2024年02月04日
    浏览(40)
  • DETR-《End-to-End Object Detection with Transformers》论文精读笔记

    End-to-End Object Detection with Transformers 参考:跟着李沐学AI-DETR 论文精读【论文精读】 在摘要部分作者,主要说明了如下几点: DETR是一个端到端(end-to-end)框架,释放了传统基于CNN框架的一阶段(YOLO等)、二阶段(FasterRCNN等)目标检测器中需要大量的人工参与的步骤,例如:

    2024年02月11日
    浏览(52)
  • 实时Flink的端到端检测和测试

    在现代软件开发中,实时数据处理和检测是非常重要的。Apache Flink是一个流处理框架,可以用于实时数据处理和分析。在本文中,我们将讨论Flink的端到端检测和测试,以及如何实现高效和可靠的实时数据处理。 实时数据处理是指在数据生成的同时对数据进行处理和分析。这

    2024年02月22日
    浏览(47)
  • 【论文笔记】End-to-End Diffusion Latent Optimization Improves Classifier Guidance

    Classifier guidance为图像生成带来了控制,但是需要训练新的噪声感知模型(noise-aware models)来获得准确的梯度,或使用最终生成的一步去噪近似,这会导致梯度错位(misaligned gradients)和次优控制(sub-optimal control)。 梯度错位(misaligned gradients):通过噪声感知模型指导生成模型时,两个

    2024年02月02日
    浏览(52)
  • 【Paper Reading】DETR:End-to-End Object Detection with Transformers

    Transformer已经在NLP领域大展拳脚,逐步替代了LSTM/GRU等相关的Recurrent Neural Networks,相比于传统的RNN,Transformer主要具有以下几点优势 可解决长时序依赖问题,因为Transformer在计算attention的时候是在全局维度进行展开计算的,所以不存在长时序中的梯度消失等问题。 Transformer的

    2024年02月14日
    浏览(51)
  • 目标检测——detr源码复现【 End-to-End Object Detection with Transformers】

    detr源码地址 detr论文地址 自定义coco数据集 在github上面下载 链接:https://pan.baidu.com/s/1fmOYAOZ4yYx_rYquOS6Ycw 提取码:74l5 生成自己所需要的权重文件 main.py 相应位置根据下图更改 model 目录下面的 detr.py 文件相应位置更改类别 num_classes detr的测试对于小物体的检测不是很好,相比来

    2024年02月16日
    浏览(46)
  • 图像 检测 - DETR: End-to-End Object Detection with Transformers (arXiv 2020)

    声明:此翻译仅为个人学习记录 文章信息 标题: DETR: End-to-End Object Detection with Transformers (arXiv 2020) 作者: Nicolas Carion*, Francisco Massa*, Gabriel Synnaeve, Nicolas Usunier, Alexander Kirillov, and Sergey Zagoruyko (* Equal contribution) 文章链接:https://arxiv.org/pdf/2005.12872.pdf 文章代码:https://github.com

    2024年02月13日
    浏览(41)
  • 《Dense Distinct Query for End-to-End Object Detection》论文笔记(ing)

    作者这里认为传统个目标检测的anchor/anchorpoint其实跟detr中的query作用一样,可以看作query (1)dense query:传统目标检测生成一堆密集anchor,但是one to many需要NMS去除重复框,无法end to end。 (2)spare query 在one2one:egDETR,100个qeury,数量太少造成稀疏监督,收敛慢召回率低。 (

    2024年01月25日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包