如何构建适合自己的DevOps软件测试改进方案

目录

DevOps成熟度模型分析

构建适合企业自身性能的测试过程改进框架

资料获取方法


根据2022年的DevOps全球调查报告显示,主流软件企业采用或部分采用DevOps且已获得良好成效的占比已达70%,DevOps俨然成为当下软件开发研究的重要方向。

测试作为软件开发的必要过程,是提升软件可靠性、保证软件质量的关键环节。然而,从过往研究文献来看,希望通过DevOps提升软件交付效率、保证软件质量的国内企业往往缺乏轻量级的测试改进路径。

本文将从软件研发最关键的质量与效率两个目标出发,对采用DevOps的软件测试需要关注的重点因素进行分析并提出改进框架及实践建议。 

DevOps成熟度模型分析

综合对比现有的相关文献,由荷兰乌得勒支大学的Feijter教授提出的DevOps成熟度模型相对更为全面、系统,共涉及三大模块及16个因子,具体如下:

上表中,成熟度按因子等级划分为1-8级;每个因子按是否更符合DevOps理念划分为2—6个等级。以“利益一致性”因子为例,仅与内部产品规划保持一致节奏的团队被划分为能力A级,而能与外部利益相关者的需求保持一致发布节奏、适应能力更强的团队为能力D级,越贴近DevOps理念,等级越高。

为更明确“利益相关者”的概念,可参照“内部开发运营的能力模型”,如下图所示:

构建适合企业自身性能的测试过程改进框架

逐一分析DevOps成熟度模型因子中与软件测试相关的内容,并按测试文化、测试过程及测试基础三个方面进行划分,可将DevOps模式下的软件测试影响因素划分如下:

影响因素所涉及的各测试因子与不同的DevOps成熟度等级相对应,选择其中最为重要的产品质量和测试效率作为评价依据,对测试因子进行重要性分析,得到结果如下​

按照上述结果,可将不同性能组织的测试情况进行如下区分:

并得出DevOps模式下的测试改进框架:

在选定适合自己的DevOps测试改进框架后,也需要对工具软件进行选择,以确保整体方案的落实。天目全数字实时仿真软件SkyEye可与众多工具(如禅道、Jenkins、GitHub、极狐Gitlab等)联合打造持续集成全链路一站式平台,专为嵌入式DevOps提供解决方案。

在持续集成流水线中,代码提交至仓库后将触发流水线运行,由持续集成服务器自动拉取代码进行静态分析、编译并加载至SkyEye仿真环境进行测试,工程师可快速获取测试报告,大大提升嵌入式软件研发效率,助力提高组织性能。

▲DevOps中的持续集成流水线


资料获取方法

【留言777】

各位想获取源码等教程资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

速度优化:重新认识速度优化

作者:helson赵子健 应用的速度优化是我们使用最频繁,也是应用最重要的优化之一,它包括启动速度优化,页面打开速度优化,功能或业务执行速度优化等等,能够直接提升应用的用户体验。因此,只要是 An…

vue脚手架文件说明

vue脚手架文件说明 1、文件介绍2、脚手架里面主要文件和作用 1、文件介绍 2、脚手架里面主要文件和作用 node_modules 都是下载的第三方包public/index.html 浏览器运行的网页src/main.js webpack打包的入口src/APP.vue Vue页面入口package.json 依赖包列表文件

MFC CList 类的使用

MFC提供CList 类; 类CList支持可按顺序或按值访问的非唯一对象的有序列表;CList 列表与双链接列表行为相似; 类型POSITION的变量是列表的关键字;可使用POSITION变量作为循环因子来顺序遍历列表,作为书签来保存位置&am…

PDF文件转换成word软件有哪些?分享两个文件格式转换软件

在日常办公中,我们经常使用各种办公软件,其中PDF和Word是最常见的两种格式。相较于Word文件,PDF文件具有更强的兼容性和安全性,因此我们通常会选择以PDF格式分享文件。然而,如果我们需要提取PDF文件中的部分内容&#…

Flask 创建文件目录,删除文件目录

项目结构 app.py from flask import Flask, render_template, request, redirect, url_for import osapp Flask(__name__) BASE_DIR os.path.abspath(os.path.dirname(__file__)) FILE_DIR os.path.join(BASE_DIR, testfile)app.route(/, methods[GET, POST]) def index():…

Elasticsearch

概念 Elasticsearch是Java语言开发的分布式的查询系统,它的每一个节点(每一个运行实例)都是一个基于Lucene的查询引擎,把Lucene用Netty封装成服务。 Lucene使用的是倒排索引的结构,如下图: Elasticsearc…

8-js高级-6(promise)

一 Promise 的理解和使用 1 Promise 是什么? 理解 抽象表达: Promise 是一门新的技术(ES6 规范)Promise 是 JS 中进行异步编程的新解决方案 (备注:旧方案是单纯使用回调函数) 具体表达: 从语法上来说: Promise 是一个构造函数从功能上来说: promise 对象用来…

239. 滑动窗口最大值

力扣题目链接 (opens new window) 给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 进阶: 你能在线性时间复杂度内解…

根据UIL下载图片/视频、根据URL自动下载图片/视频、GUI自动下载想要的图片

1,根据UIL下载图片/视频 def downForInterface(file_path):count 1value_rows []with open(file_path, encodingUTF-8) as file:f_csv csv.reader(file)for r in f_csv:value_rows.append(r)for file_path in value_rows:cunmulu if . in file_path[0]:print(cu…

[VUE]Element_UI 实现TreeSelect 树形选择器

文章目录 前言1、安装2、引用3、使用 前言 最近在做一个人员管理系统,在增改用户信息时,可能会设置用户所在的部门,因为部门是多级的,于是想到用Element_UI的TreeSelect组件实现 效果: 1、安装 npm install --save…

【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(持久化功能分析)

探究Redis服务启动的过程机制的技术原理和流程分析的指南(持久化功能分析) Redis提供的持久化机制Redis持久化如何工作Redis持久化的故障分析持久化频率操作分析数据库多久调用一次write,将数据写入内核缓冲区?内核多久将系统缓冲…

网络安全(黑客)学习笔记

1.什么是网络安全? 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 无论网络、Web、移动、桌面、云等哪个领域,都有…

微服务安全简介

​由于其可扩展性、灵活性和敏捷性,微服务架构已经变得越来越受欢迎。然而,随着这种架构的分布和复杂性增加,确保强大的安全措施变得至关重要。微服务的安全性超越了传统的方法,需要采用全面的策略来保护免受不断演变的威胁和漏洞…

Nginx与Tomcat服务器的区别以及个人网站部署方案

- Nginx和Tomcat作用一样吗? 答:不完全相同。Nginx 和 Tomcat 都可以作为 Web 服务器,但它们的作用略有不同。 Nginx 是一个高性能的 Web 服务器和反向代理服务器。它的主要作用是提供静态文件服务、反向代理、负载均衡、缓存、SSL 加密等功…

从新手到大师:优雅的Vim熟练之旅(万文详解)

从新手到大师:优雅的Vim熟练之旅 博主简介一、前言1.1、Vim编辑器的重要性和流行性1.2、目标 二、Vim简介2.1、什么是Vim2.2、历史和背景简介2.3、Vim的优势和适用场景 三、安装和设置Vim3.1、下载和安装Vim编辑器3.2、基本配置:.vimrc文件的重要性和常用…

解决使用@Field注解配置分词器失效问题(Spring Data Elasticsearch)

问题复现:插入数据时,实体类配置的Field注解没有生效 实体类: package cn.aopmin.pojo;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.data.annotation.Id; import…

网工玩虚拟机,别再只会用VMware了

中午好,我的网工朋友。 说起虚拟机,大家都不陌生吧。 虽然容器技术现在很火爆,但虚拟机还是业内网红。 毕竟使用场景非常多,比如说搭建测试环境、在Windows系统中安装Linux或在Mac机器上运行Windows系统…… 甚至还可以用来进…

jmeter随记2:压测

jmeter随记1:压测 简述一、压测步骤二、观察cpu和内存占用情况三、查看磁盘占用情况 简述 关于压测,jmeter更直观的作用是用来编写压测脚本【请求和压测策略】,然后在linux服务器上执行,也可以在本地执行,压测执行脚本在启动jmet…

深“扒”云原生高性能分布式文件系统JuiceFS

JuiceFS 是一款面向云原生设计的高性能分布式文件系统,在 Apache 2.0 开源协议下发布。提供完备的 POSIX 兼容性,可将几乎所有对象存储接入本地作为海量本地磁盘使用,亦可同时在跨平台、跨地区的不同主机上挂载读写。 JuiceFS 简介 JuiceFS…

C#月数计算器(主要用于社保、医保缴费月数计算)

1、为什么做这个? 工作中,经常需要计算参保人社保、医保缴费月数,之前都是在Excel中写一个DATEDIF公式,修改单元格中的日期,计算间隔的月数,公式如下: DATEDIF(起始日期, 终止日期, 返回类型) …