随笔分类 - 测试不是一点点
无论是单测,接口,性能,还是CI/CD,测试平台开发,我会将我所见所闻的测试技术全部交付与你。
摘要:背景 具有HA(高可用)的软件服务在集群某节点出现断网的时候,整个集群依旧可以提供正常的服务。很多开源软件都有HA版本(比如rocketmq,kafka),如果现在有一个软件需要进行高可用测试,该如何模拟其中的断网场景呢? 比如3台机器A,B,C组成的一个集群环境,其中A机器断网,B和C依旧能够正常
阅读全文
摘要:1.前言 本文演示如何在linux下(Centos7和Ubuntu16)安装maven环境 2.安装maven 可以选择maven安装包或者通过yum/apt安装maven最新版 2.1 通过maven安装包安装 下载地址:http://mirror.bit.edu.cn/apache/maven/
阅读全文
摘要:简介 本文主要介绍updateBrokerConfig、brokerStatus,wipeWritePerm和getBrokerConfig 命令 updateBrokerConfig :动态更新broker的配置(重启broker后会配置失效) brokerStatus :获取broker的运行时
阅读全文
摘要:简介 本文主要介绍clusterList和clusterRT命令 命令 clusterList:查看集群列表 clusterRT:测试集群的响应耗时 例子 clusterList 1)帮助 ./mqadmin clusterList -h 2)查看集群基本信息 ./mqadmin clusterLi
阅读全文
摘要:1.介绍 rocketmq由consumer,producer,broker三大块组成,如何对这三类服务进行运维操作呢?这里介绍rocketmq自带的命令行工具:mqadmin 2.位置 项目:https://github.com/apache/rocketmq.git ${PWD}/rocketm
阅读全文
摘要:运维场景 我搭建了一个3m-3s的rocketmq集群(参考:3m-3s的rocketmq搭建),假设限制有一套master节点的机器发生了故障,需要摘除机器,该如何进行平滑运维? 例如我搭建了一个3m-3s的broker集群,架构如下: 如果我要摘除集群中的broker-a节点,该如何操作? 首先
阅读全文
摘要:利用9台机器搭建一个3分片的broker集群,一共有3个broker实例(3m),每个master有一个slave,使用同步刷盘模式。 1.引言 本文主要介绍如何在三台机器上搭建一个3m-3s的rocketmq的集群。 2.环境准备 机器名 机器 机器配置 备注 nameserver1 192.16
阅读全文
摘要:前言 公司的项目里面使用了rocketmq,开发建议使用rocketmq的最新版本4.7.1,并采用dledger模式部署。但是我在部署测试dledger模式的时候遇到了一个坑,在这里分享一下,避免大家重复踩坑。 环境 如图是我搭建的rocketmq的dledger集群,集群为两分片:broker-
阅读全文
摘要:利用6台机器搭建一个3分片的broker集群,一共有3个broker实例(3m),采用同步刷屏模式 1.引言 本文主要介绍如何在三台机器上搭建一个3m(无slave节点的)rocketmq的集群。 2.环境准备 机器名 机器IP 机器配置 备注 nameserver1 192.168.11.1 4C
阅读全文
摘要:本文使用rocketmq的fast-try.sh快速在centos7上搭建一个单机版的rocketmq,单机版仅用于本地调试,不能用于生产环境。 1. 支持系统 Centos7/Ubuntu16/Mac/Windows 2. 配置建议 cpu:4核以上 内存:8G以上 硬盘:20G以上 3. 下载&
阅读全文
摘要:血泪史 最近在使用Jenkins拉取Git工程编译代码时候遇到一个很奇怪的的问题:Jenkins的GitPlugin下载代码的版本不对(commitId不对)。由于线上部署和线下部署的编译产物是同一版本,导致最后发布到生产环境的代码版本也不对。这个问题在线上验证阶段才最终被发现,回顾整个job构建过
阅读全文
摘要:locust的安装依赖Python3.6+以及pip3 1. 安装Python3.6及以上版本 可以参考如下: Python3.6在Windows下的安装 Python3.6在Mac下的安装 Python3.6在Centos下的安装 Python3.6在Ubuntu下的安装 2. 利用pip3安装L
阅读全文
摘要:1. 前言 最近在测试一个物联网的项目,项目里包含设备资源进行监控告警的功能。例如如下监控项:cpu负载超核、内存使用率过高、硬盘使用率过高,系统流量超速等。为了验证监控的有效性,就需要构造对应场景来进行测试。 如何对cpu,内存,硬盘,流量这几类资源进行数据构造呢? 我在网速搜罗了一圈发现有四个比
阅读全文
摘要:1.简介 iotop:一款类似top的I/O监控工具。 项目主页:http://guichaz.free.fr/iotop/ iotop由python编写(运行需安装Python ≥ 2.7)通过linux内核(2.6.20以上)来监控I/O信息,通过列表的方式展示了当前系统中进程/线程的I/O使用
阅读全文
摘要:介绍 WonderShaper是一个用于对特定网卡进行带宽限速的脚本,它封装了linux的tc命令,但是使用起来更加简单和方便,如果你对限速要求不多,可以用wondershaper满足你大部分需求。 项目地址: https://github.com/magnific0/wondershaper.gi
阅读全文
摘要:最近在测试一个项目,里面涉及到一个测试case:在linux服务器上,当网络带宽较差时,观察服务的消息处理能力和表现。限制网卡带宽有许多方法,比如Wondershaper或者ethtool。那验证限速效果呢? 最简单的方式是利用wget一个外网上的包,比如各种软件的下载包,在下载过程中,wget会显
阅读全文
摘要:在敏捷开发或者devops中,Jenkins常常作为CI/CD的主选平台,而流水线(Pipeline)是CI/CD的一个常见的体现形式,通过流水线,我们可以配置一个从编译打包,部署,自动化测试,到产品库发布的研发测试全流程,本文旨在带领大家入门一个流水线的demo,该demo展示一个了GItlab和
阅读全文
摘要:最近在论坛上看到一位朋友问到这个问题,我觉得很经典,一般二面(leader级别)都相对喜欢问这种问题,我曾经既在面试中被问过这个问题,也在后来做面试官的时候问过别人这个问题,所以正好给大家分析下这个问题、答案,还有实际的一些落地经验。 作为应聘者,在回答这个问题之前,我们要明确一点:这个问题属于开放
阅读全文
摘要:nvm是一款node版本管理工具,简单来说,如果你想在一个环境下安装多个node版本,并向自由地切换相关版本,那你就需要使用nvm进行版本管理,有点类似pyenv,也是一款python版本管理工具。 如机器上已安装过node环境,请先卸载再安装nvm,以防冲突。 centos清理方式: #卸载npm
阅读全文
摘要:一、关于FIO 1.1 简介 FIO是一个开源的I/O压力测试工具,主要是用来测试磁盘的IO性能,也可测试cpu,nic的IO性能。它可以支持13种不同的I/O引擎,包括:sync,mmap, libaio, posixaio, SG v3, splice, network, syslet, gua
阅读全文