Introduction

What is Skyramp?

Skyramp is an extensible end-to-end solution for cloud-native testing that supports functional, integration, and load testing both in the inner dev loop, and in testing pipelines. Skyramp supports mocking of sockets, and gRPC, REST, and Thrift endpoints out of the box.

At its core, Skyramp provides plug and play components for key capabilities that can either be used standalone or in combinations to create custom testing solutions for your team. The key capabilities include the following:

  1. Deployer: a tool to deploy subsets of services from a Helm chart for testing.
  2. Mocker: an easy to use mocking solution to quickly mock service dependencies in your cluster. Mocks are created automatically by using existing API definitions. Mocker supports multiple simultaneous mocks, dynamic mocks via JavaScript integration, and easy configurations to help you quickly validate your code.
  3. Tester: an in-cluster test runner that allows you to run existing tests. Developers can also write new tests in Skyramp’s declarative test format which supports request chaining and powerful assertions to create rich scenarios. The same scenarios can be reused easily for load tests too. Coming soon: Test case management.
  4. Resolver: a utility to manage DNS configurations to access your clusters. Resolver is a cleaner approach to DNS management without requiring direct edits to /etc/hosts file on your local machine.

Next Steps

Follow our installation guide and sample projects to get started with Skyramp:


How Skyramp works

Learn about the high level architecture of Skyramp

Getting Started

Learn how to download and install Skyramp terminal client.

Mocker

Replace service dependencies with lightweight static and dynamic mocks.

Tester

Write and run functional and load tests using simple declarative YAML description

Resolver

Manage DNS resolution to your Kubernetes clusters

Commands

List of Skyramp commands