[GH-ISSUE #21783] feat: Backend has no test coverage in CI — pytest is commented out and integration tests are disabled #58235

Closed
opened 2026-05-05 22:37:16 -05:00 by GiteaMirror · 1 comment
Owner

Originally created by @gboston on GitHub (Feb 23, 2026).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/21783

Summary

The Python backend has no actual test execution in CI. The only active backend workflow (format-backend.yaml, named "Python CI") only runs black formatting checks. All actual testing infrastructure has been disabled.

Current State

Active: format-backend.yaml

  • Installs black, runs npm run format:backend, checks git diff --exit-code
  • No tests are executed

Disabled: integration-test.disabled

  • The Cypress E2E job is disabled (whole workflow file renamed to .disabled)
  • The pytest job inside this file was already commented out with # before the workflow was disabled — so it was double-disabled
  • The migration test job only smoke-tests that the server boots with SQLite and Postgres (starts uvicorn, curls /api/config, checks the process is alive). No actual test assertions beyond "the app starts"

Disabled: lint-backend.disabled

  • Ran pylint via bun run lint:backend — also fully disabled

Impact

  • There is no safety net for backend regressions
  • PRs can merge with broken backend logic as long as formatting is correct
  • The existing test files under backend/ (e.g. test_auths.py, test_models.py, test_prompts.py, test_users.py) are never executed in CI
  • Contributors have no way to validate their backend changes against an automated test suite

Suggestion

  1. Re-enable the pytest job in CI (or create a new workflow for it)
  2. Re-enable backend linting
  3. Consider re-enabling the Cypress integration tests or replacing them with a lighter alternative (e.g., Playwright, as attempted in #21029)
  4. Add the migration smoke tests back as a minimum baseline

Happy to contribute a PR if the maintainers agree on the direction.

Originally created by @gboston on GitHub (Feb 23, 2026). Original GitHub issue: https://github.com/open-webui/open-webui/issues/21783 ## Summary The Python backend has **no actual test execution in CI**. The only active backend workflow (`format-backend.yaml`, named "Python CI") only runs `black` formatting checks. All actual testing infrastructure has been disabled. ## Current State ### Active: `format-backend.yaml` - Installs `black`, runs `npm run format:backend`, checks `git diff --exit-code` - **No tests are executed** ### Disabled: `integration-test.disabled` - The **Cypress E2E job** is disabled (whole workflow file renamed to `.disabled`) - The **pytest job** inside this file was already **commented out with `#`** before the workflow was disabled — so it was double-disabled - The **migration test job** only smoke-tests that the server boots with SQLite and Postgres (starts uvicorn, curls `/api/config`, checks the process is alive). No actual test assertions beyond "the app starts" ### Disabled: `lint-backend.disabled` - Ran `pylint` via `bun run lint:backend` — also fully disabled ## Impact - There is no safety net for backend regressions - PRs can merge with broken backend logic as long as formatting is correct - The existing test files under `backend/` (e.g. `test_auths.py`, `test_models.py`, `test_prompts.py`, `test_users.py`) are never executed in CI - Contributors have no way to validate their backend changes against an automated test suite ## Suggestion 1. Re-enable the pytest job in CI (or create a new workflow for it) 2. Re-enable backend linting 3. Consider re-enabling the Cypress integration tests or replacing them with a lighter alternative (e.g., Playwright, as attempted in #21029) 4. Add the migration smoke tests back as a minimum baseline Happy to contribute a PR if the maintainers agree on the direction.
Author
Owner

@pr-validator-bot commented on GitHub (Feb 23, 2026):

⚠️ Missing Issue Title Prefix

@gboston, your issue title is missing a prefix (e.g., bug:, feat:, docs:).

Please update your issue title to include one of the following prefixes:

  • bug: Bug report or error you've encountered
  • feat: Feature request or enhancement suggestion
  • docs: Documentation issue or improvement request
  • question: Question about usage or functionality
  • help: Request for help or support

Example: bug: Login fails when using special characters in password

<!-- gh-comment-id:3944873412 --> @pr-validator-bot commented on GitHub (Feb 23, 2026): # ⚠️ Missing Issue Title Prefix @gboston, your issue title is missing a prefix (e.g., `bug:`, `feat:`, `docs:`). Please update your issue title to include one of the following prefixes: - **bug**: Bug report or error you've encountered - **feat**: Feature request or enhancement suggestion - **docs**: Documentation issue or improvement request - **question**: Question about usage or functionality - **help**: Request for help or support Example: `bug: Login fails when using special characters in password`
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#58235