mockingjay alternatives and similar packages
Based on the "Other Software" category.
Alternatively, view mockingjay alternatives based on common mentions on social networks and blogs.
-
croc
Easily and securely send things from one computer to another :crocodile: :package: -
limetext
Open source API-compatible alternative to the text editor Sublime Text -
Gor
GoReplay is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes. -
Seaweed File System
SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files! Blob store has O(1) disk seek, cloud tiering. Filer supports Cloud Drive, cross-DC active-active replication, Kubernetes, POSIX FUSE mount, S3 API, S3 Gateway, Hadoop, WebDAV, encryption, Erasure Coding. [Moved to: https://github.com/seaweedfs/seaweedfs] -
rkt
An App Container runtime that integrates with init systems, is compatible with other container formats like Docker, and supports alternative execution engines like KVM. -
toxiproxy
:alarm_clock: :fire: A TCP proxy to simulate network and system conditions for chaos and resiliency testing -
Comcast
Simulating shitty network connections so you can build better systems. -
confd
Manage local application configuration files using templates and data from etcd or consul -
scc
Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go -
Docker
Notary is a project that allows anyone to have trust over arbitrary collections of data -
Juju
Juju is an open source orchestration engine for software operators that enables the deployment, integration and lifecycle management of applications at any scale, on any infrastructure. -
blocky
Fast and lightweight DNS proxy as ad-blocker for local network with many features -
Stack Up
Super simple deployment tool - think of it like 'make' for a network of servers -
Documize
Modern Confluence alternative designed for internal & external docs, built with Go + EmberJS -
GoDNS
A dynamic DNS client tool supports AliDNS, Cloudflare, Google Domains, DNSPod, HE.net & DuckDNS & DreamHost, etc, written in Go. -
peg
Peg, Parsing Expression Grammar, is an implementation of a Packrat parser generator. -
portal
Portal is a quick and easy command-line file transfer utility from any computer to another. -
Go Package Store
An app that displays updates for the Go packages in your GOPATH. -
Gokapi
Lightweight selfhosted Firefox Send alternative without public upload. AWS S3 supported. -
Guora
🖖🏻 A self-hosted Quora like web application written in Go 基于 Golang 类似知乎的私有部署问答应用 包含问答、评论、点赞、管理后台等功能 -
ipe
An open source Pusher server implementation compatible with Pusher client libraries written in GO -
ide
A Go code editor. With debugging and Autocomplete. 一个 Go 代码编辑器,具有 DEBUGGING 和 AUTOCOMPLETE -
tcpprobe
Modern TCP tool and service for network performance observability.
Clean code begins in your IDE with SonarLint
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of mockingjay or a related project?
README
mockingjay server
Mockingjay lets you define the contract between a consumer and producer and with just a configuration file you get:
- A fast to launch fake server for your integration tests
- Configurable to simulate the eratic nature of calling other services
- Consumer driven contracts (CDCs) to run against your real downstream services.
Mockingjay makes it really easy to check your HTTP integration points. It's fast, requires no coding and is better than other solutions because it will ensure your mock servers and real integration points are consistent so that you never have a green build but failing software.
- Installation - Download a binary, use a Docker image or
go get
- Rationale
- See how mockingjay can easily fit into your workflow to make integration testing really easy and robust
Running a fake server
---
- name: My very important integration point
request:
uri: /hello
method: POST
body: "Chris" # * matches any body
response:
code: 200
body: '{"message": "hello, Chris"}' # * matches any body
headers:
content-type: application/json
# define as many as you need...
$ mockingjay-server -config=example.yaml -port=1234 &
2015/04/13 14:27:54 Serving 3 endpoints defined from example.yaml on port 1234
$ curl http://localhost:1234/hello
{"message": "hello, world"}
Check configuration is compatible with a real server
$ mockingjay-server -config=example.yaml -realURL=http://some-real-api.com
2015/04/13 21:06:06 Test endpoint (GET /hello) is incompatible with http://some-real-api - Couldn't reach real server
2015/04/13 21:06:06 Test endpoint 2 (DELETE /world) is incompatible with http://some-real-api - Couldn't reach real server
2015/04/13 21:06:06 Failing endpoint (POST /card) is incompatible with http://some-real-api - Couldn't reach real server
2015/04/13 21:06:06 At least one endpoint was incompatible with the real URL supplied
This ensures your integration test is working against a reliable fake.
Inspect what requests mockingjay has received
http://{mockingjayhost}:{port}/requests
Calling this will return you a JSON list of requests
Make your fake server flaky
Mockingjay has an annoying friend, a monkey. Given a monkey configuration you can make your fake service misbehave. This can be useful for performance tests where you want to simulate a more realistic scenario (i.e all integration points are painful).
---
# Writes a different body 50% of the time
- body: "This is wrong :( "
frequency: 0.5
# Delays initial writing of response by a second 20% of the time
- delay: 1000
frequency: 0.2
# Returns a 404 30% of the time
- status: 404
frequency: 0.3
# Write 10,000,000 garbage bytes 9% of the time
- garbage: 10000000
frequency: 0.09
$ mockingjay-server -config=examples/example.yaml -monkeyConfig=examples/monkey-business.yaml
2015/04/17 14:19:53 Serving 3 endpoints defined from examples/example.yaml on port 9090
2015/04/17 14:19:53 Monkey config loaded
2015/04/17 14:19:53 50% of the time | Body: This is wrong :(
2015/04/17 14:19:53 20% of the time | Delay: 1s
2015/04/17 14:19:53 30% of the time | Status: 404
2015/04/17 14:19:53 9% of the time | Garbage bytes: 10000000
Building
Requirements
- Go 1.3+ installed ($GOPATH set, et al)
- golint https://github.com/golang/lint
Build application
$ go get github.com/quii/mockingjay-server
$ cd $GOPATH/src/github.com/quii/mockingjay-server
$ ./build.sh
MIT license
*Note that all licence references and agreements mentioned in the mockingjay README section above
are relevant to that project's source code only.