Testing and Validation in BoB
Overview
Samtrafiken provides a structured set of tools to support implementation, learning, validation, and integration throughout the development lifecycle.
These tools help you:
Understand how the BoB standard is intended to function
Develop and test components locally
Validate compliance with the specifications
Ensure interoperability before going live
Each tool serves a distinct purpose and can be used independently or in combination.
1. Local Development
BoB Metadata Docker Image
The BoB Metadata Docker Image enables you to run a local metadata environment on your own machine. In this way you can test how participant metadata and key handling works without interfacing the central Participant Metadata services.
Purpose
Develop and test metadata functionality in isolation
Verify key management processes
Build core functionality without external dependencies
Requirements
Docker
MS SQL Server
This tool is primarily intended for early-stage development, when building foundational components and experimenting locally.
2. Explore and Test Against a Reference System
BoB Test Environment (TESS)
TESS is Samtrafiken’s live test environment and provides a complete back-end system for testing and exploration.
What TESS Provides
A fully functioning ticketing back-end
Preconfigured test data
Realistic request/response flows
A stable reference implementation of the BoB standard
TESS can be used to:
Learn how the BoB standard is intended to operate
Explore real API interactions
Test end-to-end flows
Develop and test a sales channel against a working back-end system
For participants building a sales channel or client application, TESS offers a ready-made system to test against without needing access to another participant’s production environment.
Participants may also perform testing against their own systems as part of their internal integration process.
3. Validate Compliance
STEVE – Samtrafiken’s Verification Framework
STEVE (Samtrafiken’s Essential Verification Environment) is Samtrafiken’s verification framework for validating compliance with the BoB Standard.
Purpose
STEVE helps ensure that implementations follow the BoB APIs and specifications correctly. It supports developers in identifying deviations early and verifying that both requests and responses conform to the defined standards.
How It Works
STEVE operates as a proxy within a ticketing ecosystem, positioned between communicating components such as:
Back-end systems
Sales channels
Validation services
Other BoB-integrated services
Instead of communicating directly, components send their requests through STEVE.
Your client sends requests to STEVE instead of directly to the target system.
STEVE forwards the request to the target system.
The target system returns a response to STEVE.
STEVE validates both the request and the response before returning it to the client.
Validation is performed against:
The BoB API Swagger specifications
Additional JSON Schemas
Validation results are available in a dedicated results view, allowing developers to review and correct deviations efficiently.
When to Use STEVE
STEVE is particularly useful:
During active development
When validating request and response structures
For regression testing
Before production deployment
STEVE is available as a Docker image via Docker Hub.
For questions or feedback, please contact Samtrafiken through http://help.samtrafiken.se .
Choosing the Right Tool
Each tool supports a different phase of your implementation:
Phase | Tool | Objective |
|---|---|---|
Early development | Metadata Docker | Build and test metadata locally |
Learning & functional testing | TESS | Understand the standard and test flows |
During coding | STEVE | Validate compliance continuously |
Ongoing | STEVE + TESS | Regression testing |
Recommended Approach
A typical implementation path may look like this:
Develop locally using the Metadata Docker Image
Explore and test flows using TESS
Validate compliance continuously with STEVE
Perform full system testing before production
By combining these tools, participants can ensure both technical correctness and interoperability within the BoB ecosystem.