Django CI Test Optimization
SkillDatabases & dataOptimize Django and pytest-django test execution in CI with cache configuration, slow-test splitting, database reuse strategy, parallel workers, pytest-xdist, CircleCI/GitHub Actions/Jenkins/Travis patterns, and full-coverage safeguards. Use when CI test jobs are slow, flaky under parallelism, missing slow-test coverage, or need a local-vs-CI test command design.
Use Django CI Test Optimization in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Django CI Test Optimization and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Django CI Test Optimization skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by hashgraph-online/awesome-codex-plugins in plugins/LVTD-LLC/skills/skills/django-ci-test-optimization/SKILL.md and read by Ahel’s review.
CI optimization should reduce feedback time without reducing confidence. Keep fast local commands and full CI coverage distinct, then make the CI path faster with caching, parallelism, and sensible split points.
CI Workflow
-
Capture current CI timing.
- Separate dependency install, test database setup, test execution, and artifact upload.
- Compare CI time with local wall-clock time to spot environment-only overhead.
-
Cache dependencies first.
- Use CI-native cache primitives for pip or package-manager caches.
- Cache the package download cache, not an unsafe mutable virtualenv unless the project already supports that pattern.
-
Keep local shortcuts honest.
- Local runs may skip slow tests or reuse databases.
- CI should run slow tests and at least one migration-realistic database setup path.
-
Split tests deliberately.
- Split slow vs normal tests when slow markers are meaningful.
- Use parallel workers after the suite is safe under
django-test-parallelization. - Avoid duplicating expensive setup across too many shards.
-
Scale hardware only after obvious waste is removed.
- Faster runners can be the pragmatic answer, but they hide inefficient setup when used too early.
Read ci-patterns.md for command and configuration patterns.
Decision Rules
- Cache dependency downloads before rewriting test code for CI-only speed.
- Register pytest marks strictly so
slowtypos do not silently change coverage. - If local commands exclude slow tests, add a CI job that includes them.
- If using no-migration local shortcuts, add a CI path that runs real migrations.
- Split by tags when test categories are intentionally different; split by workers when the suite is homogeneous enough.
- Use timing data to choose shard boundaries.
Common Mistakes
- Caching the wrong path and seeing no improvement.
- Letting slow tests disappear from CI after adding local skip defaults.
- Running too many shards and paying database/setup cost repeatedly.
- Using SQLite in CI for a PostgreSQL/MySQL production app.
- Enabling parallel CI workers before fixing shared resources.
- Treating larger runners as a substitute for profiling.
Verification
Before finishing:
- CI still runs all required test categories.
- Cache keys change when dependencies change.
- Test split commands are documented and reproducible locally where possible.
- Slow-test or worker split reduces wall-clock time in actual CI logs.
- A debugging fallback command exists for serial reproduction.
Signals
- GitHub stars
- 1k
- Forks
- 316
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
django-ci-test-optimization- Source
- github.com/hashgraph-online/awesome-codex-plugins
github.com/hashgraph-online/awesome-codex-plugins
Related picks
Skill · hashgraph-online
The pick for Djangointegration-django
Skill · posthog
The pick for Djangosupabase-postgres-best-practices
Skill · baekenough
The pick for Postgresmysql-patterns
Skill · affaan-m
The pick for MySQLmysql-query
Skill · hashgraph-online
The pick for MySQLsqlite-ops
Skill · aiskillstore
The pick for SQLite