Skip to main content
Process · Test Release

Get builds into the lab without wasting a cycle.
Seven steps, two smoke-test gates.

A broken build in the test lab burns a cycle and a morale dividend. These seven steps — anchored by two smoke-test gates — prevent that by catching failures before they reach the team.

Steps
7
Smoke-test gates
2
Applies to
Every test release

The test release process is the most under-engineered link in most test programs. Fix the link and the whole execution cycle stops leaking days.

Key Takeaways

Four things to remember.

01

Decide content before you cut the build

Bug fixes, features, docs — resolve what is in and what is out before development spins up. A build with ambiguous content produces ambiguous test results.

02

Smoke test twice

Once after build, once after install in the lab. The same test from two sides catches different classes of failure.

03

Reject bad builds loudly

When the lab smoke test fails, uninstall and resume the old cycle. Do not try to salvage a half-working build; it costs more than it saves.

04

Version everything

Mark the build with a version both in the artifact and in the source repository. Traceability during triage depends on it.

Why this exists

The problem this process fixes.

Test releases are where time gets lost. A build lands, a test case fails, a tester files a bug, a developer responds that the build is broken — and four days of reporting later, the team realizes nobody actually ran a smoke test.

These seven steps close that gap. The two smoke-test gates (after build, after install) make the question "is the build good enough to test?" answered in minutes, not days.

The checklist

7 steps, in order.

  1. 1

    Select the content (bug fixes, new features, and documentation) for a particular test release.

  2. 2

    Implement the changes required for the bug fixes and new features, checking those changes into the source repository as they are completed and unit tested.

  3. 3

    Fetch the source files from the repository; compile, link, and otherwise assemble the build; and, mark (in the build and in the repository) the build with a version number.

  4. 4

    Smoke test the build. If the tests pass, continue with the next step; if the tests fail, figure out what went wrong, fix the problem, and return to the previous step.

  5. 5

    Create an installable media image of the build; package it appropriately; and, deliver it to the person responsible for installing it in the test lab.

  6. 6

    Install the build in the test lab.

  7. 7

    Smoke test the build in the lab environment. If the tests pass, begin the test cycle; if the tests fail, uninstall the build, resume the old test cycle, and return the build to the development team to start over at the first step.

One more thing

The seven-step sequence takes minutes per step and saves days per cycle. The discipline is the gate-keeping: the two smoke tests are not optional, and neither is the "return the build to development" path when one fails.

Take it with you

Download the piece you just read.

We keep this library free. All we ask is that you tell us who you are, so we know who to follow up with if we release an updated version. One-time form, this browser remembers you after that.

Need a QA program to back this up in your organization?

If a checklist is not enough and you want help applying it to a live engagement, we can have a call this week.

Related reading

Articles, talks, guides, and case studies tagged for the same audience.