一个分布式测试系统利器

Create an EC2 instance

  1. Sign up for AWS
  2. In Services -> EC2, click “Launch Instance”
  3. Choose the 64 bit Debian Jessie image
  4. Hit review and launch

Save your SSH key pair!

Install Java

SSH into your instance and open /etc/apt/sources.list in your favorite editor. Add jessie-backports to the file:

deb http://ftp.debian.org/debian jessie-backports main

Now run sudo apt-get update, and install the following!

$ sudo apt-get install openjdk-8-jre openjdk-8-jre-headless libjna-java

Use Docker

You need to install docker and docker
compose
. Then spin up the containers:

$ git clone https://github.com/aphyr/jepsen && cd jepsen/docker
$ ./up.sh
$ docker exec -it jepsen-control bash

Write your test

Create a new Leiningen project:

$ lein new foo && cd foo

And edit src/jepsen/foo.clj — your first test! This does nothing!

(ns jepsen.zookeeper
  (:require [jepsen.tests :as tests]))

(defn zk-test
  [version]
  tests/noop-test)

Edit test/jepsen/foo_test.clj to look like this:

(ns jepsen.foo-test
  (:require [clojure.test :refer :all]
    [jepsen.core :as jepsen]
    [jepsen.foo :as foo]))
(deftest a-test
  (is (:valid? (:results (jepsen/run! (foo/foo "3.4.5+dfsg-2"))))))

That calls the test you just wrote (and passes it a version number).

Finally! Run your test:

$ lein test

And hopefully you get something that ends with:

Everything looks good! ヽ(‘ー`)ノ
时间: 2024-12-04 16:35:54

一个分布式测试系统利器的相关文章

分布式追踪系统dapper

最近单位需要做自己的分布式监控系统,因此看了一些资料,其中就有google的分布式追踪系统dapper的论文:http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/zh-CN//pubs/archive/36356.pdf,结合自己的理解描述下这篇论文. 一.引子: 用户输入关键字后只要敲个回车键就能返回搜索结果(图1a),这样一个简单的过程可能涉及到上千个服务,可能需要上千

分布式监控系统 Watchy

问题描述 Watchy 是一个分布式的系统,用于监控应用程序和服务器.该系统非常简单和易于**.Watchy 提供一个分布式的架构和每个服务器之间守护进程的通讯,通过 UDP 获取不同服务器上的数据并在同一个面板上显示.facebook-stetho-v1.0.0-29-gd5c6036.zip**工作原理**Watchy 使用应用/事件驱动模型,如下图所示: 解决方案 谢谢哦,辛苦辛苦!static/image/common/sigline.gif90%打工小伙一生都不可能知道的秘密 http

分布式监控系统Ganglia,测试中的监控技术

我们在测试活动中,时常关注一些性能数据,这些数据从哪儿来?很显然,放在我们面前的第一道关卡便是监控技术,我们需要合理的,可以高度扩展和集成的监控系统,可以实时监控性能数据,并将他们用漂亮的方式展现出来,云时代背景下诞生了这么一些给力的工具,他们中有一些名字已经让大家足够熟悉了,Nagios,Gmond等,他们中还有一个强大的身影,就是今天给大家分享的Ganglia. Ganglia Ganglia是一个跨平台可扩展的,高性能计算系统下的分布式监控系统,如集群和网格.它是基于分层设计,它使用广泛的

日志采集框架Flume以及Flume的安装部署(一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统)

 Flume支持众多的source和sink类型,详细手册可参考官方文档,更多source和sink组件 http://flume.apache.org/FlumeUserGuide.html Flume官网入门指南:  1:Flume的概述和介绍: (1):Flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统.(2):Flume可以采集文件,socket数据包等各种形式源数据,又可以将采集到的数据输出到HDFS.hbase.hive.kafka等众多外部存储系统中(3):一般

软件测试中一个智能的 Web 界面测试系统

Web2.0 技术使 Web 界面更加丰富多彩,使信息交流更加灵活,同时也使得相关的 Web 技术测试需求越来越多.那么,如何提高 Web 界面的测试效率,保证新技术得到高质量应用?是否可以让测试人员脱离枯燥地点击鼠标,让机器自动地根据脚本运行?随着项目需求的变化,能否有一个比较快速地配置管理测试任务的方法?所有这些都可以通过一个智能的 Web 界面测试系统来实现.这个系统结合 TestNG, Ant, Selenium 还有 Flex 技术,实现方式简单.运行高效灵活,对单元测试,功能测试和集

如何设计一个复杂的分布式爬虫系统?

一个复杂的分布式爬虫系统由很多的模块组成,每个模块是一个独立的服务(SOA架构),所有的服务都注册到Zookeeper来统一管理和便于线上扩展.模块之间通过thrift(或是protobuf,或是soup,或是json,等)协议来交互和通讯. Zookeeper负责管理系统中的所有服务,简单的配置信息的同步,同一服务的不同拷贝之间的负载均衡.它还有一个好处是可以实现服务模块的热插拔. URLManager是爬虫系统的核心.负责URL的重要性排序,分发,调度,任务分配.单个的爬虫完成一批URL的爬

分布式测试框架架构与思考(1)奠基

"工欲善其事必先利其器".无论是哪个行业,这都是一句至理名言,软件测试当然也不例外.这也正是分布式测试框架(下文简称DST)设计的初衷. DST是海量数据项目背景下,为了解决测试集管理.运行.查询和测试执行.控制以及监控.日志数据的收集整理的一个通用型测试与分析平台.这个平台既包含了传统测试框架的特点也包含了自身的开创性思想.作为DST从前端界面到后端服务的亲身经历和开发者,下面我将从技术选型.架构设计.功能点分析.使用场景以及周边支持工具这几个角度来对DST测试平台做一个总结,进一步

分布式测试框架架构与思考(1)技术选型

"工欲善其事必先利其器".无论是哪个行业,这都是一句至理名言,软件测试当然也不例外.这也正是分布式测试框架(下文简称DST)设计的初衷. DST是海量数据项目背景下,为了解决测试集管理.运行.查询和测试执行.控制以及监控.日志数据的收集整理的一个通用型测试与分析平台.这个平台既包含了传统测试框架的特点也包含了自身的开创性思想.作为DST从前端界面到后端服务的亲身经历和开发者,下面我将从技术选型.架构设计.功能点分析.使用场景以及周边支持工具这几个角度来对DST测试平台做一个总结,进一步

谈分布式测试体系构建

自谷歌提出云计算概念之后,大数据领域的发展就逐渐加速日新月异,云计算具体到实例,可以归纳为调度.均衡.容错.监控.运维等一整套操作海量数据的方案.有别于传统小规模或孤立体系产品,云计算生态圈存在错综复杂的系统级别关联,并行其中的不同架构和模块流转于超大规模的分布式软硬体资源中,很难划分出明显的界限.对于这样的产品体系,传统领域的测试方案要么逐渐失效,要么作用域缩减到仅能覆盖体系末端.为了保证大数据平台的可靠性.稳定性和高性能,亟需构建一套与之相匹配的测试体系来衡量产品是否合格. 存在的问题 业界