Opened 4 months ago
Last modified 4 months ago
#35662 closed Bug
running tests now requires static files to be generated when using ManifestStaticFilesStorage — at Initial Version
Reported by: | Patrick Rauscher | Owned by: | |
---|---|---|---|
Component: | contrib.staticfiles | Version: | 5.1 |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Unreviewed | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
Hello everyone,
while migrating from django 5.0 to 5.1, I experienced a change in behavior when running unittests. We are using ManifestStaticFilesStorage, and during development and unittesting, collectstatic have never been called, as static files were only required for the final result.
This did not pose a problem in 5.0, but after switching to 5.1, tests using templates with static-templatetags failed with "Missing staticfiles manifest entry for 'admin/css/base.css'".
Of course, there are multiple ways to fix this for a given project, such as
- changing settings.py to use simple StaticFilesStorage during tests (e.g. detected by environment variable)
- running collectstatic before running tests
But, as the problem is not described in Release Notes or https://docs.djangoproject.com/en/5.0/topics/testing/overview/, users might be puzzled first.
Not sure what the best way to deal with this issue would be, but maybe it could at least be added to documentation?