For Salesforce release managers, admins and QA leads

Six weekends between your preview sandbox and the release.
Make them count.

Lastest baselines your Lightning pages, Flows and page layouts in the preview org, then diffs them against production after the release weekend — so a renamed tab or a moved field never reaches a user first.

Runs inside your networkPlaywright tests in your repoScreen-level diffs
Screen-level diff comparing a Lightning record page in a Salesforce preview sandbox against the production baseline
Prove nothing broke.

Four dates you did not choose. The first one is in August.

Salesforce ships three releases a year and sets every date in the sequence. The one that actually constrains you is the sandbox refresh cutoff: after it passes, the only way to move a sandbox onto a preview instance is to refresh it onto one, and that option is gone until the next release. Miss it and you do not get to test early at all. It is roughly four weeks away, and Salesforce advises requesting the refresh about a week ahead because of processing backlogs at the deadline. Note the shape of what follows, too: the preview window opens on 28 August and the first production instances go on 4 September — seven days later. The bulk of production, and every non-preview instance, follows on 9 October.

Sandbox refresh cutoff · 27 Aug 2026, 6:00 p.m. PT Sandbox preview window opens · 28–29 Aug 2026 First production instances · 4–5 Sep 2026 Second production wave · 2–3 Oct 2026 Main production + non-preview instances · 9–10 Oct 2026

Most release breakage is not an error. It is a screen that quietly stopped working.

Admins who have been through a bad release weekend describe the same pattern: nothing dramatic, no red errors, just things silently not working until a user noticed. Apex test classes assert server-side behaviour, so they have nothing to say about a tab that got renamed or a field that moved. Two ways to spend the preview window, and only one of them produces evidence.

01

Run the Apex tests, skim the release notes, click around the sandbox.

Coverage holds. The release notes are 600 pages and three people read the summary. A key user walks the happy path in the preview org for an afternoon, signs the UAT sheet, and the org upgrades on the release weekend. Two days later someone in the field opens a case because a console tab they use hourly is not there any more — it was renamed, and nothing you ran could have told you.

  • Apex test classes never see the page — server-side assertions pass while the layout is wrong
  • Renamed tabs and moved fields are invisible to functional and API-level checks
  • UAT coverage is whoever had a free afternoon, and the evidence is a spreadsheet
  • Experience Cloud pages, Flows behind a button and scheduled jobs rarely get walked at all
02

Baseline the org before the upgrade. Diff every screen after it.

Record your critical flows once against the current org: the console layouts, the screen Flows, the Experience Cloud pages, the record pages your team lives in. Lastest turns each into a Playwright test in your repo with a visual baseline. Replay against the preview sandbox the morning after it upgrades, and again after the production release weekend. What changed on screen is a list, not a hunch.

  • Real browser, real Lightning rendering — the same thing your users see
  • Catches the renamed tab and the moved field that a passing assertion misses
  • Timestamped before/after per screen, exportable for sign-off
  • Same run, same evidence — deterministic replay, no model in the execution path
Nothing broke loudly. There were no red errors — things just quietly stopped working until a user happened to notice.

— Paraphrased, r/salesforce, July 2026

The sandbox moved to the new release and a console tab we use every day was simply gone. It had been renamed. Cue panic mode until someone found the answer.

— Paraphrased, r/salesforce, May 2026

Asked what they use for mass regression testing, the top answer was “what is testing?” and the runner-up was “that’s when users report problems.”

— Paraphrased, r/salesforce thread

Four things the release-testing category does not offer. All four matter in a security review.

This page is one of a set. The wider argument — and the same approach applied to SAP, Dynamics 365, NetSuite and Veeva — lives on the release testing pillar.

01

It runs inside your network.

Self-hosted, on infrastructure you control. Production and full copy sandbox screens contain real customer records; they never leave your perimeter, and there is no vendor cloud holding your baselines. Your security reviewer gets a short conversation instead of a long one.

02

Your tests are Playwright, in your repo.

Readable TypeScript you can open, review in a pull request, fork and keep. Not objects in someone else’s model repository. If you replace Lastest next year, the regression pack you built for Winter ’27 still runs.

03

Diffs of the actual screen.

Pixel, structural and perceptual comparison of each captured screen, so a moved field or a component that shifted below the fold is reported rather than assumed. Text-region awareness keeps changing record data from flooding the report with noise.

04

AI records once. Replay is deterministic.

A model is used when you author or repair a test, and never during a run. The same regression pack against the same org produces the same evidence every time — which is the only kind of evidence worth putting in front of a sign-off meeting.

Every run leaves timestamped before/after screenshots and a per-screen diff. That is your test evidence — generated, not assembled by hand the night before go/no-go.

Salesforce picks the date. You decide what proof you have.

Two steps. Both fit inside the days between your sandbox refresh and your own instance’s upgrade — whether that is the first weekend in September or the main one in October.

01 · Baseline

Walk the org once. That walk becomes the regression pack.

Open the recorder, point it at the org, and click through what actually matters: the sales console, the screen Flow behind the quote button, the Experience Cloud portal your partners use, the record pages with the custom Lightning components. Hit stop. Lastest emits deterministic Playwright code plus a visual baseline for every screen it captured.

  • Works against a preview sandbox, a pre-release org, full copy, partial copy or production
  • No metadata access and no deployment — it drives the browser as a user would
  • The API version mismatch that keeps preview sandboxes out of your pipeline is irrelevant here
Recorder timeline capturing a Salesforce Lightning console flow

02 · Diff

Replay after the upgrade. Read the list of what moved.

Your preview sandbox upgrades on 28 August; the first production instances follow on 4 September, and most orgs on 9 October. Check Trust for your own instance rather than assuming. Replay the same pack at each point and compare against the baseline. The report is a per-screen list of what changed, with the before and after side by side — the thing you hand to a process owner instead of asking them to re-walk the flow.

  • Run the whole pack overnight; review the diffs with coffee, not with a spreadsheet
  • Approve an intended change once and it becomes the new baseline
  • Re-run after each Release Update you enable, so you know which screens it touched
Diff report comparing screens captured before and after a Salesforce release upgrade

Common questions about Salesforce release regression testing

How is this different from Provar, Copado or ACCELQ?
Those tools ask you to move your regression suite into their platform and their format. Lastest runs Playwright inside your own network, writes the tests into your repo as readable code, and compares the rendered screen — not just the assertion result. The three of them are strong on functional coverage of Salesforce metadata; none of them diff what the Lightning page actually looked like before and after the release weekend. Teams run both without conflict.
Do we need a git repo to use this?
A repo is where the value lands, but it is not a hard requirement to start. Lastest emits plain Playwright TypeScript files; you can run them from the Lastest instance alone. Most release teams commit them so the regression pack is version-controlled alongside the change set it protects, and so the tests survive a change of tooling, vendor or staff.
Does it work against a preview sandbox?
Yes, and that is the intended use. A preview sandbox sits on a different API version from the rest of your pipeline, which is why most deployment tooling keeps it out of the pipeline entirely. Lastest does not deploy anything, so the API version mismatch is irrelevant to it. It signs in through the browser like a user, walks your flows, and captures the screens. It works the same way against a pre-release org, a full copy sandbox, a partial copy sandbox, or production.
What happens to our tests if we stop using Lastest?
You keep them. They are Playwright files in your repo and screenshot artifacts in your storage. There is no proprietary model repository to export from, and no re-authoring project if you leave. This is deliberate: every buyer who has migrated off an enterprise test platform has paid for the privilege once already.
Our Apex test classes all pass. What would this catch that they do not?
Apex test classes assert server-side behaviour. They cannot see that a tab was renamed, that a field moved to a different column of the page layout, that a Lightning component now renders below the fold, or that an Experience Cloud page lost its branding. Salesforce admins describe this failure mode consistently: no red errors, just things silently not working until a user notices. A screen-level diff is what surfaces it, and it surfaces it during the preview window rather than after the release weekend.
We missed the sandbox refresh cutoff. Is it too late to test early?
Once the cutoff passes, the only way to change a sandbox to a preview instance is to refresh it onto one, which is no longer possible for that release — so your remaining sandboxes stay on the current version until the non-preview instances upgrade on 9 and 10 October. You can still baseline your org now and diff it immediately after your production release weekend, which shortens the window between a regression appearing and someone seeing it. Then set a reminder for the next refresh cutoff, and request the refresh about a week early: Salesforce warns of processing backlogs at the deadline.
Does anything leave our network?
No. Lastest is self-hosted. The runner, the browsers, the baselines and the diff images all sit on infrastructure you control, and org data never reaches us. Recording a flow uses a model to author the Playwright code; you can point that at your own endpoint, and replay never calls a model at all.
How do we handle Release Updates and other changes Salesforce enforces on a schedule?
Read the release notes and the Release Updates list to decide what to enable and when, then use the baseline as the control. Enable a Release Update in the preview sandbox, replay the regression pack, and the diff report shows exactly which screens moved. That report is the artifact you take to UAT sign-off, rather than a spreadsheet of steps someone ticked at 9pm on a Friday.

The refresh cutoff
is in August.
Scope the regression now.

Thirty minutes. We map your next forced release date to a regression scope: which orgs, which screens, which Flows, and what evidence you need for sign-off. You leave with the scope whether or not you use Lastest. Deployment is self-hosted and runs entirely inside your own network. Related reading: the release testing pillar.

Book a release-readiness review →
release-weekend

# baseline captured before the upgrade

$ lastest run --suite salesforce-regression

 

sales console · 42 screens

quote screen flow · 11 screens

partner portal · 18 screens

 

# after the release weekend

$ lastest diff --against baseline

 

3 screens changed · evidence exported