All insights
Test management

Air-Gapped Test Management: Staying Auditable With No Route to the Internet

Air-gapped QA teams in defence, medtech and payments cannot lean on cloud tools. Here is what actually breaks, and what a tool has to do instead.

Oct 3, 20266 min read
Air-Gapped Test Management: Staying Auditable With No Route to the Internet — Tesbo

If you run quality on a machine with no route out to the internet, most QA writing simply is not for you. It is written for a laptop that can reach a CDN, phone a licence server, and ping a crash reporter without anyone noticing. Defence programmes, medical device labs and payments infrastructure teams do not get that luxury. The network boundary is the whole point of the system, and every tool assumption modern software makes quietly fails against it. This post is for the head of quality who has to answer, in writing, how a test record stays trustworthy when nothing in the room can call home. It settles what "air-gapped" actually requires of a tool, what breaks first, and what auditability looks like when there is no external clock to check against.

What air-gapped actually requires of a tool

An air-gapped environment is not "the internet is slow here." It means the machine has no route out, full stop, by policy and usually by physical design. That changes what counts as installable software.

  • An installable artefact you can carry in on approved media, not a link to fetch during setup
  • No licence server call-home, at install or at any point afterward
  • No CDN-hosted assets the interface expects to load at runtime
  • No telemetry or update check that fails closed, meaning it must not block or degrade the app when it cannot reach anything

That last point trips up more vendors than you would expect. A tool that quietly tries to check for updates every session, then hangs or throws an error when it cannot, is not actually air-gap ready even if the core features work offline.

The specific things that break

Once you actually try running a normal web-era tool inside a sealed network, the failures cluster in predictable places.

  • Font and script CDNs, where the interface silently loses icons or falls back to an unstyled page
  • Licence activation, which usually expects a handshake with a vendor server on first run
  • Crash reporting, which is built to phone a third-party service the moment something goes wrong
  • Anything that displays remote content inside the application itself

That fourth one deserves a plain example rather than an abstraction. Some open source test tools carry advertising inside the free tier to fund the project. Kiwi TCMS is upfront about this: a container that displays EthicalAds is fetching creative from outside the network, which an air-gapped install simply cannot do. Ad-free rendering sits in their paid Self Support tier (kiwitcms.org, checked 20 August 2025). This is not a knock on the ad network. EthicalAds is cookie-free and its revenue goes to their Open Collective, so there is no privacy story here. The point is narrower and more mechanical: a web element that loads from outside the boundary cannot load at all inside one, regardless of what it is or who it benefits.

How updates work without a network

Outside an air-gapped boundary, a tool updates itself, or at least nags you until you click a button. Inside one, every update is a physical event. Someone builds or downloads the package on a connected machine, moves it across on approved media, and verifies it against a published checksum before it ever touches the sealed network.

That verification step is not optional theatre. Without a network connection, there is no way to later ask "was this really the file the vendor shipped." The checksum has to be checked at the point of transfer, and the resulting version has to be recorded somewhere durable, because nobody can query upstream for release history six months from now. If an auditor asks what version of the test management system was running during a release in March, the answer needs to already be written down. It cannot be looked up.

The AI question, and why it is decisive here

This is where the gap between marketing and reality gets sharpest. A hosted AI feature, the kind that suggests test steps or summarises a run, depends on reaching a model that lives on someone else's servers. In an air-gapped environment, that server cannot be reached, ever, by policy.

There are only three honest outcomes:

  • The AI feature is switched off entirely, and the rest of the tool still works
  • The model runs inside the security boundary, on hardware you control, which is a serious infrastructure commitment most teams do not make lightly
  • The tool is simply unusable in this environment if the AI feature is load bearing rather than optional

If a vendor's answer to "does this work air-gapped" is vague about which of these three it is, that vagueness is itself the answer. Ask directly, and ask for it in writing, because "it should work fine" from a salesperson is not something you can show an auditor. Whether any given deployment can run air-gapped is a question worth putting to the vendor directly rather than assuming either way, since neither offline installation nor a local model has been verified here.

What auditability looks like with no external time source

Outside a sealed network, you take a lot for granted: an NTP server for accurate timestamps, an identity provider to say who logged in, a cloud backup you never think about. Inside an air-gapped boundary, some or all of that is gone too, and the system has to be internally consistent instead of externally verifiable.

That is exactly why the run history inside the tool matters more here than anywhere else. Picture the yearly compliance review for a payments platform, where an assessor wants to see who executed which test case, on what build, and when. On a connected system, you have several ways to corroborate that story. On an air-gapped system, the tool's own execution record is often the only record that exists. If it is thin, undated, or editable after the fact, there is nothing else to fall back on.

The practical takeaway is that the completeness of the audit trail is not a nice to have feature here. It is the entire compliance posture for that machine. Ask what a full export of a single test run looks like, what fields it captures, and whether entries can be altered without leaving a trace, before the room ever goes live.

Questions people ask

Does "air-gapped" just mean a firewalled network with restricted access?

No. Air-gapped means no physical route to the internet at all, not a network with rules. Firewalled systems can still reach approved external services; air-gapped systems cannot reach any external service, by design.

Can a tool be "mostly" air-gap compatible if only the AI features need internet access?

Only if those AI features are genuinely optional and the tool degrades gracefully without them. If any core workflow depends on a hosted call, the tool does not work in this environment at all.

Is Kiwi TCMS's use of ads a privacy problem for air-gapped teams?

No. EthicalAds is cookie-free and the concern here is purely mechanical: the ad container needs to reach an outside server, which an air-gapped machine cannot do. Their paid Self Support tier removes ads for exactly this kind of environment.

How do we prove to an auditor what software version was running six months ago on an air-gapped system?

You record the version and checksum at the point of transfer, in a durable log inside the boundary, because there is no way to query the vendor's release history later without a network connection.

Does Tesbo support air-gapped deployment or a local AI model?

That has not been verified here, so ask Tesbo directly for a written answer on offline installation, licensing, and whether AI drafting features run locally or require a hosted connection.

Keep going

Try Tesbo, or get the next useful idea

Start building your testing workflow now, or get one practical email a month.

Start free

One email a month

What we shipped, what we learned, and the occasional infographic worth pinning. Unsubscribe in one click.