Servirtium - Service Virtualization for tests

For teams that love Agile, CI/CD, DevOps, or fast builds that devs can run on their workstations too.
The name: SERvice VIRTualiztion IUM (inspired by Selenium)

Servirtium is primarily a markdown syntax for recorded and played back HTTP conversations with implementation in a number of languages. You would use Servirtium libraries with automated test scenarios.

Who would use Servirtium?

  • Development teams consuming vendor web-APIs that want to eliminate slow, flaky and costly aspects to working with those
  • Vendors wanting to ship a number of example web-API usages to their clients and developer community, but also be language agnostic. Each example would be a scenario, like 'out of credit at time of purchase' or 'increase auction bid by a specified amount'"

Servirtium In Different Languages


Language Implementation Self-contained demo repo using "Climate API" library concept Authors Readiness for use
JavaScript & TypeScript servirtium-javascript demo-javascript-climate-tck (Jest) Duong Pham 95%
.NET servirtium-dotnet demo-dotnet-climate-tck (Xunit) Stephen Hand 95%
Go servirtium-go demo-go-climate-tck (testing) Duong Pham 95%
Java, Kotlin etc http4k-testing/servirtium http4k/servirtium-demo-kotlin-climate-tck - Kotlin and also Java (JUnit5). jbehave-servirtium-climate-tck-demo (JBehave) David Denton 95%
Python servirtium-python demo-python-climate-tck (PyTest) Steve Freeman, Yogesh Naik & Ross Fung 70%
Ruby servirtium-ruby demo-ruby-climate-tck (RSpec) Rob Park 90%
Dart (and Flutter) servirtium-dart demo-dart-climate-tck (Test) and for iOS demo-flutter-climate-tck (flutter_driver) Khaleel Shaheen & Hemanth Raj V 90%
Rust servirtium-rust demo-rust-climate-tck Denis Karpovskiy 90%
Elixir servirtium-elixir demo-elixir-climate-tck (ExUnit) Josh Price 50%
Legacy Java servirtium-java demo-java-climate-tck (JUnit4) Paul Hammant 95%
Haskell early days ... (?) Charlie Austin 5%

Service Virtualization History

Credits: © 2019 Servirtium committers.
Jekyll theme by Jalpc by Jarrekk.
Hosting by Netlify