Skip to main content
Version: master

Testing

Two distinct worlds, split accordingly:

Automated — the pvtest suite

One suite, driven by test.docker.sh, running against an appengine container, a pool of them, or a real device.

  1. The pvtest Harness — architecture, execution models, execution flow, how to build and install it, and where a run's output lands
  2. Running and Authoring pvtests — running against the appengine pool, adding and updating tests and containers, the authoring rules (including the cross-target ones), and how CI drives it
  3. Running Against a Real Device — the device manifest, the re-type hook, substituting container tarballs for another architecture or signing CA, and which non-PASS results are expected
  4. pvtest List — every test by scope and category, with status

Manual — hand-driven testing

Building and loading the appengine image, plus the per-feature test plans (auto-recovery, cgroups, container control, IPAM, pvctrl, pvtx, xconnect).

Driving the appengine container itself — starting it, entering namespaces, log locations, pvcurl/pvcontrol recipes — is documented in the pantavisor repo at docs/overview/appengine.md, alongside the pv-appengine code.

Keeping the test list updated

When a pvtest is added, modified, or removed, update automated/pvtest-list.md and TODO.md. Mark completed tests .