Property testing Kubenix
Cluster-wide invariants checked at compile time, not after a deploy.
Stub.
The chapter covers the property-testing techniques we apply to Kubenix-defined clusters: invariants that span services, the test runner setup, examples of properties we ship by default, and how to add tenant-specific properties.
A property test for a cluster looks much like a property test for any other piece of typed code: state an invariant in the type system or in code, run a generator that produces representative cluster states, and check that the invariant holds for every generated state. The difference is the substrate — the “code” being tested is the desired state of a cluster, not a function — and the value of the technique scales with how much your cluster’s correctness depends on relationships you can’t see by reading any one chart.