Skip to content

k3po/k3po

Repository files navigation

K3PO

Build Status

Gitter

K3PO is a network driver and language agnostic testing tool. It is designed to be able to create arbitrary network traffic and behavior, and to certify whether a network endpoint behaves correctly when subject to that behavior.

The network behavior that the K3PO network driver creates is specified in a K3PO scripting language. This language is described here.

The K3PO network driver can be directed to start emulating behavior defined in scripts via a [control protocol](Control Protocol). Test frameworks in various programming languages can then utilize the control protocol to leverage K3PO for their own testing needs.

K3PO also consists of a collection of specifications that validate correctness for a variety of public protocols, such as HTTP (RFC 7230-7237), WebSocket (RFC-6455), etc.

Testing frameworks

K3PO is language agnostic and can be used by many different languages and test frameworks. The Java JUnit framework is located in this project. Other frameworks include:

C Client Test Framework

C# Client Test Framework

IOS Client Test Framework

Documentation

Documentation is located on the Wiki

Java Quick Start

The examples directory is setup as an example to test java client implementations. Run "mvn clean install -pl examples" to see it work.