Testing
Testing is the kis.ai test execution framework. You define tests in YAML and run them with
kis test. One test can call an HTTP API, check a database, run a command-line program, wait on
a WebSocket or server-sent-events stream, and drive a browser with Playwright (Obscura by
default, or Chromium, Firefox or WebKit), with values flowing from each step to the next. The same test definitions drive load testing, so a
functional suite becomes a load workload without rewriting it.
Runs stream results to the console and exit non-zero on failure, so Testing drops straight into CI. Results can be captured as JUnit or an HTML report, kept in a results database for comparing runs, and measured for route and statement coverage of the service under test. When you need scale, functional runs and load runs spread across several machines through an orchestrator and its agents, and load runs can also be split by hand.
Continue with
Section titled “Continue with”- Getting started: install, write your first API test and first load test, and pick the right command.
- Test definitions: the YAML schema: suites, tests and steps; HTTP, gRPC, database, CLI, stream, browser and script steps; group steps and reuse; suite defaults; hooks, tags,
skip:andonly:. - Assertions and variables: the assertion grammar and operators, templating, variable scope, extracting values, and shared memory between tests.
- Data-driven tests: table-driven execution from inline rows, files, or rows fetched at run time.
- Scripting: script steps: supported languages, the
test.*API, and the built-in namespaces. - Load testing: profiles and phases, thresholds that gate CI, trends, the target’s resource metrics, and running across machines.
- Server modes: the orchestrator and its agents, distributed functional and load runs, the HTTP API, and configuration.
- Outputs: console output, JUnit reports, the HTML report, the results database, comparing runs, and artifacts.
- Coverage: which of a service’s routes a run called and which of its statements ran.
- CLI reference: every command and flag:
run,load,runs,coverage,monitor,tests,api,agentandorchestrator.