自动化测试架构你都了解吗?

news2024/11/18 8:34:42

如果没有组织的智能测试功能, 随着系统复杂性的增加, 新开发的成本可能非常高。构建、部署、更新、创新等将会变得麻烦,因为现有的代码库需要更多的努力来验证。保持系统的可靠性和稳定性将获得对开发和创新的所有权。

现在需要做的是提高发展与创新的比例。那么只需将验证和验证系统完整性的人工工作转移到机器时间即可。人力资源部门有更多的时间来验证和提高目前正在开发的内容的质量和稳定性。

有人会说测试不适用于 IT 架构。但事实是,软件的设计和治理方式最终会成为测试完成和自动化方式的蓝图。

在实施和改进自动化测试架构的后期,通常存在技术缺陷。通过这些方式,我将上下文表述并定位为“自动测试化架构”。它包含一个测试策略框架,作为架构的一部分,即技术策略。

1.测试级别

以前的模型将业务和 IT 定义为联合连接。我们确保技术以预期的方式实现业务 - 以及该业务的IT计数提供基本的构建区域 - 计划- 以满足期望。

此模型显示了测试覆盖率如何从业务需求开始。但表示产品如何重新连接到最终产品中商定的质量和批准方面的测试级别。本文的其余部分将介绍这三个中的更多内容。

自动化测试以及新的开发旨在减少确保系统稳定性和完整性所需的时间、精力和频率,同时由于开发和外部压力因素而发生变化和修改。

2.有意义的测试方法

计算每个测试级别的测试次数,应形成如下金字塔结构。定义和维护测试通常越复杂,金字塔中的位置越高。从权衡创新的角度来看,意义更重大。

最好确保级别之间的测试不重叠。最佳情况下,由于级别的层次结构,测试覆盖范围得到扩展和完成。原因是我们不想引入浪费和不必要的维护。因此,这种“经典”的金字塔可视化并不完全正确。

如果金字塔在上层区域正下方有白色间隙,那就更真实了。像左边这样的图表可能更具描述性。

当测试失败时,这一原则为从哪里开始分析的结论提供了更高的准确性。如下图所示,将其视为可以根据失败/成功而更改的颜色。

即,如果 API 和 UI 出现故障,则问题可能出在 API 中。如果 API 已修复,但 UI 仍然失败,请继续在 UI 或单元/代码测试中进行调查。

“如果它在生产或单元测试中失败,但在 UI 或 API 测试中没有失败,我们是否需要考虑扩展测试范围?”— 是的,很可能。每个生产校正都可能候选在有意义的级别添加测试。

3.测试覆盖率

自动化测试覆盖率在三个测试自动化管道中解决。把一个完整的产品想象成一个寓言。

代码级方法,单元测试,验证构成产品的每件作品的完整性、功能和预期结果。这些通常应该非常小,并且只验证它们构建的目的。

API 级别方法提高了视野,其目的是确保依赖外部资源按预期工作。即管道、道路、应急、电力、信件等都可以连接到产品提供服务。它可能被称为集成测试,但 API 级别用于验证其他操作组件或服务的有效性和可操作性。即通过充当系统并进行简单的数据请求和响应查询,以验证连接性 - 数据和响应时间。验证系统代码内部的实际响应,是单元测试,而不是API。

最后,UI 级别的方法是按照用户的行为行事。当一个人真正把车停在以上产品的车库里时。这需要系统的某些部分像现实一样工作。此方法可以快速添加复杂的依赖项和条件以工作。此级别的测试将主要以业务为重点进行选择和定义。希望与企业一起,这有助于设定目标和期望。作为回报,测试报告将定期创建和交付。即每个月。这些测试的设置可能很复杂,并且涉及许多步骤和集成。但它们的维护不能复杂或片状。不允许测试数据因环境中的预期条件更改而失败。

通常对于所有级别 — 对于每个环境,测试不必完全相同(但应该完全相同,以避免手动异常和配置的额外工作)。自动化可以而且应该在常见的支持的CI / CD工具(如TeamCity或Azure / Amazon DevOps)中自动化。

4.报告、描述和样式

UI测试必须是每个正在运行的测试环境单独的套件和配置。在(行为驱动开发)编写测试场景时使用 BDD 编写的样式,通过使用“给定x当y然后z”。例;

Story: A user that access the application

As a user
In order to do my daily intended work
I want to be able to use the application

Scenario: Availability of Application
Given that I have visited the webpage-url
And stated my login credentials
When i was requested those in the start page
Then I should be able to start work directly

理想情况下,报告与级别测试一起在 DevOps 管道中自动构建。即通过测试工具就可以完成。报告可以作为链接、电子邮件或附件自动发送给相关利益相关者,即业务用户或产品所有者。

API 测试验证并验证与预期的数据交换。即验证响应模式或响应中的某些元素。给定的BDD,当样式完全可以,但在这里定义可能是不必要的开销。API 测试应该是多变的。下表是 API 级别测试中的实时报告示例。

实时报告的示例显示,acc & dit 中部署的代码可能具有相同的问题。即无响应的 API

列描述;集合 - 在脚本中执行的预期/测试的集合。命名约定推断每个测试环境、每个系统透视和每个依赖终结点都有一个测试集合。基础 - 服务的基本可访问性及其响应时间。验证 - 获取并验证所需的每个 API 方法的架构。如有必要,请验证响应中的相关值。例外-引发错误方案,并根据预期验证错误响应。

建议以 BDD 样式编写单元测试,但可以通过任何有意义且对实际测试情况有意义的方式进行。格式和命名的限制较少,因为它们通常不会向 IT 开发团队以外的任何人公开。在正常情况下,报告应该完全保留在开发团队和 CI/CD 工具中。

5.自动化测试

严格来说,测试架构并不控制自动化和 CI/CD 的建立方式。广泛接受的工具或平台有助于跟踪部署、提交、历史记录和可访问的配置。但是,任何能够执行自动化并使开发团队能够将手动测试工作集中在新开发上的方法或技术都可能成功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1066471.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

天启科技联创郭志强:趟遍教育行业信数化沟坎,创业智能赛道重塑行业生态

郭志强 天启科技联合创始人 近20年互联网、企业信息化、数字化实施、管理及培训经验。对于集团型企业及初创企业、传统企业及互联网企业的信息化、数字化转型有自己独到的见解和实操经验。具备跨区域、集团化信息规划、解决方案、系统架构及企业流程搭建、优化和技术团队管理能…

汽车冲压车间的RFID技术设计解决方案

一、RFID技术的基本原理 RFID技术是一种利用非接触式自动识别的技术,通过将RFID标签放置在被识别物品上,并使用RFID读写器对标签进行扫描和识别,实现对物品的自动识别和追踪。RFID标签分为被动式和主动式两种。被动式标签无内置电源&#xf…

【网络安全 --- kali2022安装】kali2022 超详细的安装教程(提供镜像)

如果你还没有安装vmware 虚拟机,请参考下面博客安装 【网络安全 --- 工具安装】VMware 16.0 详细安装过程(提供资源)-CSDN博客【网络安全 --- 工具安装】VMware 16.0 详细安装过程(提供资源)https://blog.csdn.net/m0…

小谈设计模式(23)—桥接模式

小谈设计模式(23)—桥接模式 专栏介绍专栏地址专栏介绍 桥接模式主要角色抽象部分实现部分分析 核心思想应用场景123 优缺点分析优点123 缺点12 总结 专栏介绍 专栏地址 link 专栏介绍 主要对目前市面上常见的23种设计模式进行逐一分析和总结&#x…

企业会议新闻稿怎么写?纯干货

在信息爆炸的时代,如何撰写一篇既吸引人又能传递信息的新闻稿?本文伯乐网络传媒将为您揭示企业会议新闻稿的写作技巧与实践,助您提升企业形象。 一、紧扣社会热点,捕捉公众注意力 1. 紧跟社会热点:新闻稿应紧密围绕时…

小米、华为、iPhone、OPPO、vivo如何在手机让几张图拼成一张?

现在很多手机自带的相册APP已经有这个拼图功能了。 华为手机的拼图 打开图库,选定需要拼图的几张图片后,点击底部的【创作】,然后选择【拼图】就可以将多张图片按照自己想要的位置,组合在一起。 OPPO手机的拼图 打开相册&#…

跨境必备!WhatsApp营销——注册、养号、防封号!

前面的文章,我们给大家介绍了WhatsApp营销的定义以及重要性,相信许多跨境小伙伴已经摩拳擦掌,迫不及待讲WhatsApp纳入您的全渠道营销策略。当然,工欲善其事,必先利其器,拥有安全的WhatsApp号与登录环境会让…

【华为OD机考】统计监控、需要打开多少监控器(JAVA题解——也许是全网最优)

前言 本人是算法小白,甚至也没有做过Leetcode。所以,我相信【同为菜鸡的我更能理解作为菜鸡的你们的痛点】。 题干 OD,B 卷 100 分题目【OD 统一考试(B 卷)】 1. 题目描述 某长方形停车场每个车位上方都有一个监控…

[开源]基于Vue的拖拽式数据报表设计器,为简化开发提高效率而生

一、开源项目简介 Cola-Designer 是一个 基于VUE,实现拖拽 配置方式生成数据大屏,为简化开发、提高效率而生。 二、开源协议 使用GPL-2.0开源协议 三、界面展示 概览 部分截图: 四、功能概述 特性 0 代码 实现完全拖拽 配置式生成…

【Docker】Docker的工具实践及root概念,时间戳的概念和Docker容器安全性设置的详细讲解

作者简介: 辭七七,目前大二,正在学习C/C,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: 七七的闲谈 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖&#x1f…

vscode刷leetcode使用Cookie登录

1、打开vscode,选择扩展,搜索leetcode,选择第一个,带有中文力扣字样,安装后重启 2、选择这个小球,切换中文版本,切换后,会显示一个打勾 3、选择小球旁边的有箭头的小门&#xff0…

linux 安装 jsoncpp包

报错 CMake Error at CMakeLists.txt:20 (find_package): Could not find a package configuration file provided by “jsoncpp” with any of the following names: jsoncppConfig.cmake jsoncpp-config.cmake 如何安装 jsoncpp sudo aot-get install libjsoncpp-dev

dmesg 崩溃分析

dmesg 查看 segfault 各项含义 [ 7953.241716] test.out[46470]: segfault at 0 ip 00007f8f091db100 sp 00007ffe0ffa31c8 error 6 in libadd.so[7f8f091db0001000] at 引起故障的地址 ip 指令的内存地址 sp 堆栈指针地址, 即栈顶指针 error 是由三个字位组成的,从…

工业品商城软件java和PHP哪个好?

互联网飞速发展的今天,网上商城系统开发已经成为了拓展业务、提升用户体验的必备之选。 MRO工业品电商平台的概念及现状 MRO 工业品是指工厂或企业对其生产和工作设施、设备进行保养、维护、维修,保证其运行所需要的非生产性物料。即Maintenance 维护;…

【新书推荐】当 Python 遇到 ChatGPT —— 自动化办公落地

文章目录 当 Python 遇到 ChatGPT:一种强大的组合1. 文本生成2. 自动翻译3. 对话生成4. 情感分析 新书推荐《Python自动化办公应用大全(ChatGPT版):从零开始教编程小白一键搞定烦琐工作(上下册)》前言内容简…

《DevOps 精要:业务视角》- 读书笔记(一)

DevOps 精要:业务视角(一) 第1章 什么是DevOps1.1 起源1.1.1 敏捷软件开发方法1.1.2 管理基础设施即代码1.1.3 这是必然的 1.2 定义1.3 为什么要实施DevOps?1.3.1 缩短市场响应时间1.3.2 减少技术债务1.3.3 消除脆弱性 1.4 历史起源1.5 常见误…

爬虫:网站三次请求获取频道内容

一、抓包 url aHR0cDovL3d3dy55amZ3LmNuLw从下图中可以看出&#xff0c;打开网页请求了三次&#xff0c;前两次在response中并不返回网页内容。 二、代码模仿第一次请求返回 <html><head><meta http-equiv"Content-Type" content"text/html; …

猜猜 JavaScript 输出:(! + [] + [] + ![]).length

一起猜 最近看到一个很有意思的题&#xff0c;直接来看&#xff0c;下面这段代码的打印结果是什么&#xff1f; console.log((! [] [] ![]).length) 猜猜看&#xff0c;你的答案是什么&#xff0c;打在评论区。 我的答案是 undefined&#xff0c;正如我的英文名 为什么呢&a…

开放式耳机的品牌有哪些?OWS不入耳开放式耳机品牌分享

开放式耳机是一种创新型的音频设备&#xff0c;与传统耳机相比&#xff0c;它有许多独特的优势。首先&#xff0c;开放式耳机不需要堵住耳道&#xff0c;因此长时间佩戴不会对听力造成损害&#xff0c;这是其最显著的优势之一。此外&#xff0c;它不需要深入入耳&#xff0c;因…

优化一对一直播实时美颜SDK性能的实践

在当今数字化社交的时代&#xff0c;直播已经成为人们分享自己生活、才艺和经验的重要方式之一。与此同时&#xff0c;美颜功能也逐渐成为许多直播平台的标配。用户期望通过直播过程中的美颜效果来展现最佳状态&#xff0c;这使得实时直播美颜SDK的性能优化变得尤为重要。本文将…