TESTING_CHECKLIST

Manual Testing Checklist

Use this checklist to verify the app is working as intended before a release or after significant changes.


1. Authentication

  • Visiting the app when not logged in shows the login prompt
  • Entering the wrong password shows an error and does not log in
  • Entering the correct password logs in and dismisses the login prompt
  • After logout, API requests are rejected (refreshing the page requires re-login)
  • Auth token persists across page refreshes (user stays logged in)

2. App

  • App loads without errors
  • App keeps session data
    • Theme
    • Login token
  • App displays Sidebar and Start Page on open
  • App can be switched between light mode and dark mode
  • App displays the correct version and copyright on the bottom right

3. Start Page

  • Start page looks nice and is centered in the Workspace area
  • Start page can be seen above the background grid
  • Start page correctly informs user of their server connection state
  • New Project button creates a new local project and loads it
  • Open Local Project button opens a system dialog that lets the user load a project, and loads it
  • Open Docs navigates to the User Guide on a new tab

4. Sidebar

  • Sidebar displays user account and settings buttons at top (currently not hooked up)
  • Sidebar displays Open and New button
  • Server access panel can be seen
    • If server is connected, access panel is collapsed, and displays the Disconnect button on expand
    • If server is disconnected, access panel is open and displays Server, Password and Connect
    • Status dot next to SERVER is green if connected, red if disconnected
  • If server is disconnected, Project area displays text saying there are no projects
  • If server is connected, Project area displays any projects that are accessible to the user
  • Open Docs button is displayed, and opens the User Guide in a new tab
  • Theme selector is displayed, and allows user to switch between Auto, Light and Dark
  • Shortcuts panel is visible and has correct shortcuts listed
  • Sidebar can freely collapse and expand without issues

5. Projects

  • If there are no server projects, the SERVER section is not visible
  • If there are no local projects, the LOCAL section is not visible
  • If there are server projects, all available server projects are displayed as separate entries in the SERVER section
  • If there are local projects, all loaded local projects are displayed as separate entries in the SERVER section
  • Right-clicking the project area without hovering over a project opens a truncated context menu that allows user to open or create project
  • Right-clicking a project brings up a full context menu with options to rename, duplicate, delete, localize, or download the project, as well create or open
  • All context buttons work as intended
  • A project that is Dirty displays the upload button
  • A project that is Clean does not display the upload button
  • Clicking on a project opens it in the workspace

6. Workspace

  • All three panels and the header appear (blank in empty project)
  • Title correctly displays the project name
  • Status buttons correctly summarize connection and save status of the project
  • Clicking on the project name allows you to edit it, and accepting the edit also updates the sidebar
  • The download button downloads the project, and the upload button uploads it

6.1. Waveform Panel

  • The Add Audio button opens a file dialog and allows you to select an audio file, then loads it into the panel
  • If project already has a waveform, it is loaded into the panel
  • Adding an audio file when one already is present warns the user about overwriting
  • Adding an audio file makes the project dirty
  • The waveform is correctly displayed, zoom at 1x
  • The waveform is displayed in the minimap
  • Scrolling on the waveform zooms
  • Scrolling on the minimap pans
  • Hovering cursor over the waveform moves the hover line, and it correctly displays the timecode
  • All controls work as expected

6.2. Transcript Panel

6.3. Speakers Panel

UNFINISHED

10. Error Handling & Edge Cases

  • Opening the app with no projects shows the start page (not a blank screen or error)
  • A project with an empty transcript displays the waveform but an empty transcript panel
  • A project with no speakers defined does not crash the speakers panel
  • Rapidly splitting and merging segments does not corrupt the transcript
  • Closing or refreshing the browser tab with unsaved changes prompts a warning (if applicable)
  • Server requests that fail (e.g., network error) show an error notification rather than silently failing
  • The app recovers gracefully if the server goes offline mid-session