Skip to content
Back to skills

Integration Testing

ASecurity

"Install and verify django-rest-framework-gis with GeoDjango,

  • 247 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 8, 2026
testingpythongodjangotestingapidatabasebackend

Works with

  • api

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill integration-testing --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Integration Testing?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Integration Testing
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-integration-testing/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-integration-testing)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: integration-testing
description: "Install and verify django-rest-framework-gis with GeoDjango,
  native geospatial libraries, and an appropriate spatial database."
disable-model-invocation: true
metadata:
  disco-role: operating
license: MIT
---

# Integration testing

Use this sub-skill when a project needs a safe installation check, GeoDjango/native-library diagnosis, a compatible Django/DRF matrix, or focused integration verification for `djangorestframework-gis`.

## Route here for

- Installing the public `djangorestframework-gis` distribution and its declared Python dependencies.
- Choosing a supported Python/Django/DRF/django-filter combination.
- Checking package imports separately from GEOS, GDAL, PROJ, and spatial-database readiness.
- Configuring `INSTALLED_APPS`, a PostGIS test database, or the deliberately partial SpatiaLite alternative.
- Running focused Django or pytest checks and interpreting database-dependent failures.
- Using [`scripts/check_environment.py`](scripts/check_environment.py) for a no-database, no-network JSON environment report.

## Do not handle here

- Serializer, field, filter, pagination, schema, tile-name, or GeoJSON API recipes: route to the corresponding API sub-skill.
- Designing application models, URLs, views, or endpoint contracts: route to the relevant API sub-skill.
- Claiming that a spatial database is healthy from Python imports alone.

## Operating workflow

1. Create or select an isolated environment and install the public package. Confirm the resolver selected versions within the declared ranges; do not silently mix an old DRF-gis release with a newer compatibility claim.
2. Select a supported matrix from [environment](references/environment.md). For the current 1.3.x line, Python 3.10–3.13, Django 4.2–6.1, DRF 3.12–3.18, and django-filter 23.5–25.x are the documented ranges; the package declares `django>=4.2`, `djangorestframework>=3.12,<3.19`, and `django-filter>=23.5,<26.0`.
3. Run the bundled environment checker before loading project settings. It checks imports and native GEOS/GDAL/PROJ capabilities without opening a database or network connection.
4. Add `rest_framework_gis` after `rest_framework` in `INSTALLED_APPS`, then run the project’s normal Django system check. Package imports can pass even when settings, app registration, or model loading is broken.
5. Choose PostGIS for the complete spatial test path. Use SpatiaLite only when its explicitly documented feature gaps are acceptable, and mark unsupported tests as skips rather than treating them as passes.
6. Run focused Django/pytest tests with the project’s configured settings and spatial database. Separate serialization/geometry smoke results from ORM predicate, distance, migration, and query-plan results.
7. If diagnosing a failure, use [troubleshooting](references/troubleshooting.md). Record the exact Python, Django, DRF, django-filter, GEOS, GDAL, PROJ, backend, and database evidence.

## Verification boundary

The maintainer CI path uses a PostGIS service and a broad compatibility matrix, which is evidence for the intended full test path. Current production inspection established Python 3.12 with Django 6.1, DRF 3.18.0, django-filter 25.2, GDAL 3.13.3, and GEOS 3.14.1 package/module imports and geometry smoke. It did **not** establish a live PostGIS execution result. Never report PostGIS integration as verified unless the target project actually connects to PostGIS and completes a focused database test.

Start with [environment](references/environment.md), then use [testing](references/testing.md) for reproducible checks and [troubleshooting](references/troubleshooting.md) for failures.

Files in this skill

  • SKILL.md3.6 KB
  • references/environment.md6.1 KB
  • references/testing.md5.2 KB
  • references/troubleshooting.md5.4 KB
  • scripts/check_environment.py8.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.