Test Environments

Testing environments

When a team says “the build moved to an environment,” it means that the release build was deployed in a separate environment with its own address, settings, and data.

The same build can behave completely differently on DEV, IFT, and PROD.

We’ll cover:

Why One Environment Is Not Enough

DEV is used for quick experiments and initial checks of fresh changes, while QA is used for steady checks of an agreed build.

PROD is the environment for real users and real data, so only a verified version gets there.

Examples of problems when working in one environment

Redeployed Build

If everything is in one environment

A developer redeploys a build to the shared environment, and the tester cannot tell why everything broke: the check, the new version, or an unstable environment.

When environments are separated

DEV can quickly check a fresh build, while QA keeps the tester on an agreed version and shows after which deployment the problem appeared.

Environment Map: From Chaos to Users

Names can differ: some teams say TEST, others say QA; IFT may be called SIT; PREPROD may be called STAGE. The abbreviation matters less than the team agreement: who deploys, who tests, what data can be changed, and what means ready for the next step.

DEV

Development Environment

Developers quickly check fresh changes right after a build: the application starts, the change is available, and the obvious happy path does not fail. Stability is not guaranteed, and test data may be recreated.

Initial check

This environment helps the team catch obvious problems quickly, but it does not replace full quality checks.

QA / TEST

Test Environment

A controlled environment where the tester performs the main task check: smoke testing, functional scenarios, and regression checks.

Main checks

Requirements, test data, checklists, and clear bug reports matter most here.

IFT / SIT

Integration Environment

IFT means Integration Functional Testing, and SIT means System Integration Testing. Services are connected to each other and to test versions of external systems.

Service exchange

This stage checks data exchange between components: API contracts, queues, payments, authorization, and callbacks.

UAT

Acceptance Environment

UAT stands for User Acceptance Testing. Business users, a product owner, or a customer review scenarios from the perspective of real value.

Acceptance goal

The goal is to confirm that the scenario solves the user problem and to separate bugs from requirement changes.

PREPROD / STAGE

Preproduction

Preprod or stage is as close to production as possible in configuration, deployment process, and connections. Data is usually anonymized or prepared specially.

Release rehearsal

The team rehearses the production deployment and checks migrations, settings, feature flags, final smoke, and release readiness.

PROD

Production

Production is where real users, money, orders, and reputation live. This is not the place for checks that could have been done earlier.

After deployment

After deployment, the team runs post-release smoke and watches logs, metrics, and tracing to quickly decide whether a hotfixis needed.

Main trap: “works for me” proves nothing until you know the environment, version, and settings.

What Testers Should Know Before Testing

“Cannot reproduce” often means not “there is no bug”, but “we are looking at different environments”. Before testing, record the context.

If a bug depends on the environment, include the environment, version, data, and integration in the bug report . It saves hours of back-and-forth and helps the team understand where to look.

A Typical Release Candidate Route

A release candidate is a build that the team considers mature enough for final checks. Usually it does not jump from dev to prod; it moves through a chain:

DEV QA IFT UAT PREPROD PROD

A small project may live with dev, test, and prod. A large fintech product almost always separates integrations, acceptance, and preprod.

Task
Task available to premium users!

Unlock access to learn without limits.

Full access to all practical tasks
Answer checking
Unlimited attempts
Sidebar arrow