Release Testing Procedure

July 9, 2026 · View on GitHub

Purpose

A broad manual smoke/regression test to run on any deployment of a new release of The Combine.

  • Covers core functionality across all deployment targets.
  • Not a substitute for automated tests or for testing release-specific changes.

General Info

Assumptions

  • The deployment itself is already verified: no pod/deployment/job errors, db migrations applied.
  • Only a browser is needed; no WireGuard or cluster access.
  • You have (or will create in step 2A) two user accounts, at least one a site admin.
  • Steps assume the project Owner (the user who created the project) unless stated otherwise.
  • 🟨 master is auto-deployed to QA, so fixes can be retested shortly after merge.

Flags

Steps and sub-steps are tagged with the narrowest applicable flags. Untagged items apply to all deployments.

FlagApplies to
🟧 [ONLINE]Both online deployments (QA and Prod)
 🟥 [PROD]https://thecombine.app only
 🟨 [QA]https://qa-kube.thecombine.app only
🔵 [OFFLINE]Both offline deployments (Laptop and NUC)
 🟢 [LAPTOP] Laptop install (Ubuntu installer script) only
 🟣 [NUC] NUC install only

Sample text

Copy-paste these for font and RTL testing as needed.

ScriptText
Arabic (RTL)مرحبا بالعالم
Hebrew (RTL)שלום עולם
Teluguనమస్కారం
Thaiสวัสดีชาวโลก
Korean안녕하세요

Testing Steps

1. Load the login/signup page

Open the site and confirm the page loads without error.

  • This confirms the frontend, backend, and database are all running and communicating.
  • 🟧 Confirms the Turnstile (captcha) widget loads.
FlagLoginSign-up
🟥https://thecombine.app/loginhttps://thecombine.app/signup
🟨https://qa-kube.thecombine.app/loginhttps://qa-kube.thecombine.app/signup
🟢https://local.thecombine.app/loginhttps://local.thecombine.app/signup
🟣1https://nuc1.thecombine.app/loginhttps://nuc1.thecombine.app/signup
🟣2https://nuc2.thecombine.app/loginhttps://nuc2.thecombine.app/signup
🟣3https://nuc3.thecombine.app/loginhttps://nuc3.thecombine.app/signup

2A. Sign up

Create a user via the sign-up form and confirm you land in the app.

  • 🟧 Skip if you already have 2 users, unless a sign-up change is being tested.
  • 🟧 If signing up, use a valid email you control, e.g. <last>_<first>+combine@sil.org.

2B. Log in

Log in.

  • Skip if you were logged in via signup.
  • This confirms authentication end-to-end.

3. Password reset — 🟧 Online only

From the login page, request a password reset; open the email, follow the link, set a new password, and log in.

  • This confirms the email service.
  • Alternates that also test the email service: email verification (in user settings), project invite via email (in Project settings).

4. Create projects

Create two projects: one with LIFT import and one without.

5. Project settings

Open project settings and click through the tabs.

  • Change the semantic domain language; confirm the domain tree updates.
    • Include any language new in this release.
  • In the Users tab, add a second user to the project:
    • 🟧 Via email invite or username search.
    • 🔵 Via username search.
    • Change the user's role; verify permissions match (e.g., Harvester sees only Data Entry).
  • In the Users tab, add a speaker; select it in the top bar when recording in Data entry.
  • In the Schedule tab, set a workshop schedule that includes today (used in the Statistics step).

6. Data entry

Enter several words across multiple semantic domains.

  • Paste from Sample text as needed to test LTR and RTL non-Latin scripts.
  • Confirm RTL text displays correctly and the vernacular font renders.
    • This confirms fonts are being served.
  • Add a gloss and a note to at least one entry.
  • On one entry, add a recording before submitting it and another after submitting it.

7. Data Cleanup

7.1. Review entries

Open Data Cleanup > Review Entries and make edits.

  • Edit a word; record and play audio; add a flag.

7.2. Merge duplicates

Open Data Cleanup > Merge Duplicates in the LIFT-imported project.

  • Complete at least one merge and one defer.
  • Verify the defer makes Review Deferred Duplicates available in Data Cleanup.

7.3. Check Orthography

Open Data Cleanup > Check Orthography in the LIFT-imported project.

  • Mark one character Accepted and one Rejected; save.

7.4. Completed

Open Data Cleanup > "You've Completed:" and verify all cleanup was captured.

8. Statistics

Open the project Statistics page (chart button in the top bar) and click through its views.

  • Confirm the per-user, per-domain, and per-day counts reflect the entries you made.
  • Confirm the workshop progress estimate appears (requires the schedule from step 5).

9. Export and verify

Export the LIFT-imported project and spot-check the zip contents:

  • entries present in the .lift file;
  • audio files included.

10. User interface localization

In user settings, switch the UI language and confirm the UI updates.

  • Include any UI language new in this release.
  • Test RTL UI: set browser language to Arabic, set user setting to detect browser, refresh.
    • Confirm layout mirrors (menus, navigation, dialogs).

11. User Guide

Open the User Guide from the app.

  • Switch the guide to a non-English language; confirm pages render.

12. Site Settings

Log in as a site admin and open Site Settings.

  • Confirm the project list and user list load.
  • Archive any test project that you're done with.
  • Add a banner; refresh to confirm it displays; remove banner.