18.1 Test declaration
@tag(slow, db)
test integ "order flow" with cluster(nodes: 3) { … }Form: attributes* test kind? "name" (with environment, …)? (seeds range)? { body }.
| Kind | Purpose |
|---|---|
(none) / unit | an ordinary in-process test |
integ | with an environment: an in-process cluster, databases, topics |
sim | deterministic simulation (§18.4) |
contract | compatibility of client and server of different schema versions |
ab | A/B experiment (§18.5) |
bench | micro-benchmark |
fuzz | fuzzing by parameter types |
- A test name is unique within the package. The full name is
module::name. - Tests and declarations with
@test_onlydo not get into a build withoutoxl test. @tag(…)— arbitrary labels for selection (part III).@skip("reason")— skipping;@flaky(retries: n)— repeat on failure with a mark in the report.- A unit test is executed as a node with the implicit role
alland an in-memory built-in storage: services are called in-process, sharded actors are created locally. - A test body MAY use
?: an error fails the test with the error and trace printed. asUser(id) { … },asService(name) { … }— execute a block on behalf of a principal.
Related diagnostics
See also
Source: docs/spec/oxl-standard.en.md