DevOps
文章平均质量分 88
专注持续交付技术
zuozewei
7DGroup技术公众号作者,中国计算机学会(CCF)专业会员、中国计算机学会(CCF)高性能计算&计算机安全&物联网专业委员会委员,InfoQ签约作者,优快云博客专家、测试领域优质创作者,华为云·HCDE(原MVP)、华为云·云享专家、2021年度华为云社区十佳博主,掘金2021年度人气作者No.12,阿里云开发者社区专家博主,某客《全链路压测实战30讲》专栏作者之一,《性能测试实战30讲》、《高楼的性能工程实战课》专栏编委。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
移动端自动化测试工具 Appium 之持续集成
总体上集成还是比较简单,关键是 pom 文件配置,工程怎么启动,还有 Jenkins 怎么配置。移动端自动化测试工具 Appium 快速入门移动端自动化测试 Appium 框架之数据驱动移动端自动化测试工具 Appium 之元素操作小技巧移动端自动化测试工具 Appium 之 main 启动移动端自动化测试工具 Appium 之自定义报告。原创 2024-05-14 09:48:51 · 1076 阅读 · 0 评论 -
移动端自动化测试工具 Appium 之自定义报告
移动端自动化测试工具 Appium 之自定义报告原创 2024-05-13 18:00:57 · 1534 阅读 · 1 评论 -
移动端自动化测试工具 Appium 之 main 启动
Jenkins做集成测试是不错的工具,那么UI自动化是否可以,appium与testng结合能否集成到jenkins中去做定时运行。如果要执行,先解决jenkins怎么识别testng原创 2024-05-10 10:26:49 · 1192 阅读 · 1 评论 -
移动端自动化测试工具 Appium 之元素操作小技巧
简单介绍几个测试用例写法,随着大家不断熟悉移动端UI自动化,技能会逐渐增加,希望给大家带去一点帮助。原创 2024-05-08 15:05:02 · 1136 阅读 · 0 评论 -
GitLab 服务端 hook 拦截提交到仓库
每当我们接收一份新的版本,代码拿到手要做的第一件事就是查看 git log,看看这份代码的提交记录,最近代码做什么修改。如果我们看到 git log 杂乱无章,如果不知道每次提交的代码到底是做了什么,那么对于我们来说是比较痛苦的事情。所以说,规范的 CHANGELOG 不仅有助于他人帮忙 review 代码,也能高效的输出 Release Note,对版本管理也至关重要。原创 2021-12-24 11:23:25 · 3475 阅读 · 5 评论 -
混沌工具之ChaosMesh源码编译安装
ChaosMesh 如果你想自己改点啥,加点功能,那就得从源码开始编译安装。本篇就带你来看下如何实现编译安装。环境要求:操作系统:macOS 11.1golang 1.15.7安装依赖:brew install golang nodejs yarn kind安装 Docker 和 Docker Registry:brew install --cask dockerdocker run -d -p 5000:5000 --name registry registry:2.7.1添加原创 2021-11-06 11:36:53 · 1546 阅读 · 0 评论 -
混沌工程之ChaosMesh使用之模拟网络Duplicate包
文章目录前言目标配置执行验证恢复重传原理逻辑说明和 RTO 算过程留下思考的空间前言今天我们来玩一下 ChaosMesh 模拟网络 duplicate 包的情况。同时也要看一下对应用产生的直接影响。目标模拟网络重复包。配置yaml 文件配置[root@s5 ChaosMesh]# cat network-duplicate.yamlapiVersion: chaos-mesh.org/v1alpha1kind: NetworkChaosmetadata: name: network-原创 2021-11-03 14:30:13 · 1054 阅读 · 0 评论 -
混沌工程之ChaosMesh使用之模拟POD网络丢包
模拟 POD 产生丢包yaml 文件配置:[root@s5 ChaosMesh]# cat network-loss.yamlapiVersion: chaos-mesh.org/v1alpha1kind: NetworkChaosmetadata: name: network-loss-example namespace: chaosspec: action: loss mode: one selector: labelSelectors: "k8s.k原创 2021-11-02 09:53:49 · 1401 阅读 · 0 评论 -
混沌工程之ChaosMesh使用之模拟POD网络延迟
文章目录前言模拟 POD 网络延迟目标配置文件执行验证恢复留个思考题给你前言在这一篇中我们来看一下如何模拟 POD 网络故障。模拟 POD 网络延迟目标指定 pod 产生 10 ms延迟。配置文件apiVersion: chaos-mesh.org/v1alpha1kind: NetworkChaosmetadata: name: web-show-network-delayspec: action: delay # the specific chaos action to in原创 2021-11-01 14:18:42 · 1353 阅读 · 0 评论 -
混沌工程之ChaosMesh使用之模拟CPU使用率
文章目录前言Chaos Mesh 的基本工作流原理Chaos Mesh 功能点Chaos Mesh 安装Chaos Mesh 访问Chaos Mesh 使用之模拟CPU负载总结前言今天来玩一下混沌工程的开源工具之一的 ChaosMesh。ChaosMesh 的目标是要做一个通用的混沌测试工具。ChaosMesh 是要和 k8s 结合使用的,其中用了云原生的能力。Chaos Mesh 的基本工作流原理从原理图上可以看出大概的工作流程:用户用 yaml 文件或 k8s 客户端创建更新 Chaos原创 2021-10-31 16:47:23 · 2230 阅读 · 0 评论 -
混沌工程之ChaosBlade-Operator 使用之模拟 POD 丢包场景
文章目录实现说明安装示例应用准备示例应用安装示例应用安装验证模拟Pod 网络丢包场景目标配置恢复实现说明ChaosBlade-Operator 是 ChaosBlade 的 K8s 平台场景的实现。将混沌实验通过 Kubernetes 标准的 CRD 方式定义,用户可以像定义 Deployment 或 StatefulSet 那样定义 ChaosBlade 实验,只要对 kubectl 和 Kubernetes 对象有所了解,就可以轻松的创建、更新和删除实验场景;同时也可以通过 chaosblade c原创 2021-10-28 17:28:20 · 1461 阅读 · 0 评论 -
移动端自动化测试 Appium 框架之数据驱动
背景自动化是为业务测试服务,如果数据与业务放在一起看起来不是很规整与整洁,是否可以把数据与业务分离,是完全可以的,这也是市场常见的数据驱动框架,今天咱们就聊一聊怎么搭建自己数据驱动框架;前置条件appium环境搭建成功,不会参考自动化工具之Appium工具简单介绍,实在不会在参考网上怎么搭建。思考UI自动化框架元素放文本存储、数据存储、代码直接存储等其实随便那个都行,只有自己用者方便就行,我工作中用文本文件存储,这样修改方便,脚本放svn/git管理就行,ui自动元素操作基本常见的就是ID/NAM原创 2021-10-20 10:46:16 · 8749 阅读 · 0 评论 -
混沌工程之 ChaosToolkit K8S 使用之删除 POD 实验
文章目录什么是 ChaosToolkit?实验准备安装 python3安装 pipenv安装 chaos-toolkit 的 k8s 扩展和报告模块创建虚拟环境实验实操chaos discover 探索试验chaos init 生成试验Chaos Run 执行案例检查结果小结什么是 ChaosToolkit?今天我们来玩一下混沌工程的开源工具 ChaosToolkit ,它的目标是提供一个免费,开放,社区驱动的工具集以及api。官方源码链接:https://github.com/chaostool原创 2021-09-28 13:35:43 · 1046 阅读 · 0 评论 -
混沌工程之 SpringBoot 集成 ChaosMonkey
文章目录一、前言二、前提条件三、具体操作四、总结一、前言这几天在用一些混沌工程的工具,所以整理一下,以备参考。后面有空再整理其他的工具,一个个都写一写。反正闲着也是闲着。我没有按正规格式写专栏的习惯。所以就随意一点。二、前提条件有一个 SpringBoot 的应用。三、具体操作添加依赖<dependency> <groupId>de.codecentric</groupId> <artifactId>cha原创 2021-06-30 10:02:22 · 1579 阅读 · 14 评论 -
SonarQube 7.4 集成报告插件
文章目录一、前言二、Sonar PDF Report Plugin1、介绍2、安装3、快速使用3.1、配置3.2、下载报告三、sonar-cnes-report1、介绍2、快速开始3、安装3.1、单机模型3.1、插件模式(自 2.2.0 起)4、帮助命令5、示例6、兼容矩阵四、小结一、前言本文总结目前两种常用的生成 SonarQube 结果报告的方法,以备查阅。二、Sonar PDF Report Plugin适用SonarQube版本 : 5.5–7.5。2.0.X:适用SONARQUBE5.原创 2021-06-24 10:27:14 · 3720 阅读 · 3 评论 -
Docker 操作指南之常用操作篇
文章目录docker 安装简易安装安装最新版本非 root 用户管理 docker修改默认存储添加加速器获取 images常用命令docker [OPTIONS] commandattachbuildcommitcpcreatediffeventsdocker 安装简易安装echo deb http://get.docker.io/ubuntu docker main \| sudo tee /etc/apt/sources.list.d/docker.list sudo apt-key adv --原创 2021-06-20 11:48:03 · 1388 阅读 · 5 评论 -
性能场景之异常场景设计及分析
一、前言今天来说下异常场景设计,和什么情况下异常场景执行算是通过。从性能实施的角度来说,异常场景基本上几个古老的手段:宕主机( reboot 和断电(一般人不这么干,是怕断了电,再也起不来));宕应用( Kill 和正常 shutdown);宕网络(ifconfig down 和拨网线);其实不止这些手段来做异常,像:模拟网络抖动模拟 IO、CPU 满负荷(有人问为啥不模拟内存满负荷,说实话,个人除了因为不喜欢之外,还觉得没这个必要);模拟各业务层超时(这个和宕应用不一样原创 2021-05-26 18:13:19 · 2085 阅读 · 1 评论 -
Linux 网络故障模拟工具TC
文章目录一、什么是TC?二、什么是HTB?三、TC使用步骤四、基本操作1、正常网络2、模拟网络丢包3、模拟网络延迟4、HTB 队列分层限制5、网络限流效果五、小结一、什么是TC?TC(traffic control) 是 Linux 中的流量控制工具。它是通过控制 netem 来实现的网络场景模拟。该工具是直接对物理网卡生效的,如果是逻辑网卡,则该控制无效。如果是用的虚拟机,可视虚拟网卡为物理网卡。二、什么是HTB?HTB 是 Hierarchy Token Bucket 的缩写。通过在实践基础上的原创 2021-05-19 11:36:20 · 1940 阅读 · 5 评论 -
ChaoBlade 的实现原理
文章目录一、混沌工程的定义二、下载并解压三、使用及实现1、模拟CPU负载2、模拟IO高四、总结一、混沌工程的定义根据混沌工程的principles,里面这样定义了:Chaos Engineering is the discipline of experimenting on a system inorder to build confidence in the system’s capability to withstandturbulent conditions in production.原创 2021-05-14 09:31:42 · 2211 阅读 · 0 评论 -
持续交付之如何选型代码分支策略?
代码分支策略前言高效的持续交付体系,必定需要一个合适的代码分支策略。采用不同的代码分支策略,意味着实施不同的代码集成与发布流程,这会影响整个研发团队每日的协作方式,因此研发团队通常需要很认真地选择自己的策略。现状采用的分支策略目前我们采用的 Git Flow 模型,其在 2011 年左右被大家当作了推荐的分支模型。
文章目录前言Taurus简介为什么推荐?环境准备安装 python3.x安装pip3.x安装Taurus常规安装Docker Image小结前言相信大家对这个工具都很陌生,国内能搜索到的资料很少,那么为什么突然推荐想起来这个工具呢?第一,我觉得它很好用;第二,为后面介绍的服务端性能自动化框架铺成。Taurus简介Taurus是 BlazeMeter 的核心组件,其是一个开源自动化框架,用...原创 2019-10-24 13:50:04 · 4331 阅读 · 5 评论 -
Jenkins Pipeline+SonarQube+Python集成钉钉群消息自动通知(webhook版)
文章目录前言准备工作配置使用Pipeline构建Pipeline的介绍新建Pipeline项目job UI 界面(参数化构建)Pipeline脚本钉钉通知依赖包脚本通知效果小结前言SonarQube 最需要的功能之一是能够在质量未达到预期水平时使通知或构建失败。我们知道在 SonarQube 中具有质量阀的内置概念,在上文我们是试图通过在主动等待其执行结束来获取扫描结果功能。但该解决方案并不是...原创 2019-10-09 15:36:09 · 3186 阅读 · 8 评论 -
性能环境之Jenkins+Maven自动化部署SpringBoot压测环境(实战篇)
前言Jenkins是目前最流行的开源CI(持续集成)工具,广泛用于项目开发,部署和自动化等。本文将指导你完成在阿里云Centos 7服务器完成enkins+Maven自动化部署SpringBoot压测环境整个过程。...原创 2018-10-26 14:25:20 · 1602 阅读 · 0 评论 -
Jenkins+SonarQube+Gitlab集成钉钉群消息自动通知(Python版)
文章目录前言实现效果预备知识钉钉自定义机器人获取自定义机器人webhook使用自定义机器人消息类型及数据格式消息发送频率限制Python Jenkins API连接Jenkins获取Jenkins job numberSonarQube Web-APIPython Requests发送请求定制请求头更加复杂的 POST 请求具体实现Python 脚本Jenkins设置结果验证前言在 Jenki...原创 2019-03-19 09:49:14 · 4332 阅读 · 9 评论 -
浅谈基于 OpenStack 和 k8s 轻量研发私有云建设
文章目录一、背景二、面临的挑战三、功能简介1、核心优势2、核心设施平台(IaaS云)3、基础服务平台(PaaS云)四、技术落地1、整体架构2、技术选型2.1、IaaS云技术2.2、PaaS云技术3、实践的过程3.1、OpenStack & CloudStack3.2、KVM & VMWare3.3、CentOS & Ubuntu3.4、OpenStack & k8s3.5、拥抱开源面临的困难3.6、云原生架构带来的挑战3.7、私有云建设路线3.8、私有云的容量评估3.9、全栈原创 2020-11-07 01:04:48 · 6055 阅读 · 3 评论 -
Windows Server 2016 安装 Docker
必备条件若要在 Windows Server 上运行容器,需要一台运行 Windows Server(半年频道)、Windows Server 2019 或 Windows Server 2016 的物理服务器或虚拟机。建议优先更新服务器Windows Server 2016已经支持Docker技术,官方也给出了资料:https://docs.microsoft.com/zh-cn/virtualization/windowscontainers/quick-start/quick-start-wi原创 2020-07-14 15:57:02 · 5248 阅读 · 6 评论 -
Centos 7.8下使用 Docker 安装 MySQL 5.7
文章目录开发环境服务器环境使用 Docker 安装 MySQL开发环境Windows/MacOSNavicat Premium 11.2.7及以上Python 3.6服务器环境Centos 7.6DockerMySQL 5.7使用 Docker 安装 MySQL拉取官方镜像(我们这里选择5.7,如果不写后面的版本号则会自动拉取最新版):docker pull mysq...原创 2020-04-30 14:29:45 · 870 阅读 · 0 评论 -
性能环境之Jenkins+Maven自动化部署SpringBoot压测环境(Docker篇)
前言在上文中我们介绍了常规部署流程,本文将在上文的基础上扩展Jenkins+Maven+Docker自动化部署我们的压测环境。关于DockerDocker在这里有什么用?Docker,是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPho...原创 2018-10-30 00:02:02 · 1317 阅读 · 0 评论 -
Centos 7.8下使用 Docker-compose安装 Testlink
文章目录安装Docker安装 Docker-Compose访问Testlink安装DockerCentOS7 系统 CentOS-Extras 库中已带 Docker,可以直接安装:$ sudo yum install docker安装之后启动 Docker 服务,并让它随系统启动自动加载。$ sudo service docker start$ sudo chkconfig doc...原创 2020-05-07 15:24:38 · 913 阅读 · 0 评论 -
Centos 7.8下安装Nexus3 OSS(Docker版)
文章目录安装Docker安装Nexus3 OSS登录验证安装DockerCentOS7 系统 CentOS-Extras 库中已带 Docker,可以直接安装:$ sudo yum install docker安装之后启动 Docker 服务,并让它随系统启动自动加载。$ sudo service docker start$ sudo chkconfig docker on关闭 ...原创 2020-05-07 10:41:39 · 882 阅读 · 0 评论 -
Centos 7.8下部署Jenkins Blue Ocean(Docker版)
文章目录系统要求安装Docker安装Jenkins系统要求最低推荐配置:256MB 可用内存1GB 可用磁盘空间(作为一个 Docker 容器运行 Jenkins 的话推荐 10GB)为小团队推荐的硬件配置:1GB+ 可用内存50 GB+ 可用磁盘空间安装DockerCentOS7 系统 CentOS-Extras 库中已带 Docker,可以直接安装:$ sudo y...原创 2020-04-30 11:47:17 · 1567 阅读 · 0 评论 -
持续交付之Jenkins+Ansible+Python搭建自动化部署框架(win版)
文章目录前言部署的需求落地方案技术架构主要特点技术选型环境配置预备知识AnsibleAnsible是什么?Ansible能做什么?Ansible架构Ansible工作原理Ansible特性Ansible主要组成部分注意事项具体实现环境规划搭建 Master 环境(Linux)搭建受控端环境(window)主机要求升级 Upgrading PowerShell 和 .NET FrameworkWin...原创 2019-11-20 11:54:03 · 1364 阅读 · 0 评论 -
持续交付之解决Jenkins自动发布中交互式参数应用
文章目录背景Active Choices Plugin简介主动选择参数主动选择反应式和反应式参考参数具体设置安装插件参数级联更新实现效果小结背景我们在使用 Jenkins 做自动发布平台的时候遇到一个需求,即根据不同的版本分支,选择不同的主机环境,同时还需传入相应的程序版本号。最终实现 Nexus OSS 仓库下载对应版本的程序包,自动化实现整个程序的发布。Active Choices Pl...原创 2019-10-29 14:15:17 · 2931 阅读 · 0 评论 -
持续交付之.Net项目单测自动化框架落地(入门篇)
文章目录前言落地方案技术架构主要特点技术选型核心步骤功能展示单元测试覆盖度分析钉钉通知遇到的坑小结前言自动化测试框架和平台形形色色,只有最合适项目团队的才是最好的,本文带着大家快速搭建一个属于自己.Net项目的轻型单测自动化框架。落地方案技术架构主要特点使用 MSTest 作为项目运行框架,方便执行测试用例,生成测试结果使用开源工具作为报告驱动,二次美化功能,界面更美观,内容清晰...原创 2019-10-25 15:17:19 · 1362 阅读 · 0 评论 -
持续交付之解决Jenkins集成编译获取代码提交记录及钉钉通知
文章目录背景解决方案下载插件源码源码简要分析编译源码生成 hpiJenkins Job设置钉钉通知小结背景我们在使用 Jenkins 集成编译完成后,会主动向项目组钉钉群推送编译和打包通知,方便测试同学下载测试。但同时带来一个新的需求,项目组同学想从通知中快速了解代码变更内容。我们知道开发同学在 Git 提交代码的时候都有修改注释,所以思考是否能直接获取代码的修改注释显示在最终的编译完成的通知...原创 2019-10-23 11:34:08 · 3330 阅读 · 0 评论 -
持续交付之.NET项目版本管理及技术落地(Python版)
文章目录前言版本管理需求版本号说明发版节奏版本文件名规则解决方案整体设计主要方案核心步骤注意事项开发组长其他同学小结前言在上文中我们已经介绍基于 Git Flow 模型代码分支管理策略,同时为保证能给客户持续提供高品质的产品,保持项目稳定性,增强产品价值输出的节奏感。同时,为了规范工作流程,给客户提供明确的版本信息,固对产品发版策略以及分支管理规则提出要求,促使项目团队内认识一致,行为动作标准...原创 2019-10-22 10:05:57 · 828 阅读 · 0 评论 -
持续交付之基于Git Flow代码分支策略实践
文章目录前言主干开发(TBD)特性开发Git Flow产品分支策略基本情况分支管理分支合并时间初始化配置迭代开发紧急bug修复预览版(Bata)稳定版(正式版)紧急bug修复流程日常特性开发Git工作流Git常用指令代码合并Git撤销&回滚操作拣选指令Git代码提供规范基本原则提交注释规则前言高效的持续交付体系,必定需要一个合适的代码分支策略。采用不同的代码分支策略,意味着实施不同的代...原创 2019-06-27 11:54:27 · 1937 阅读 · 3 评论 -
SonarQube7.4集成P3C
文章目录前言操作步骤下载插件集成插件规则配置前言我们在使用 SonarQube 做 Java 静态代码扫描的时候必须使用同一套规范,而 SonarQube 默认使用的是它自带的规范(SonarQube 称为规则),而我们都知道在国内阿里在Java领域开源著名的《阿里巴巴Java开发手册》和 P3C IDE插件,那么我们有没有什么办法把其与 SonarQube 集成呢?答案是当然有的。操作步...原创 2019-05-15 12:18:56 · 5561 阅读 · 15 评论 -
Visual Studio 中使用 SonarLint 分析 C# 代码
前言VersionWindows 10 Pro 1709 16299.371SonarQube 6.7.2 LTSVisual Studio Enterprise 2017 15.6.6SonarLint 3.10.0.3095C# 7.2.NET Framework 4.6.1安裝 SonarLint原创 2019-03-29 15:29:25 · 6136 阅读 · 0 评论
分享