7. Tests de conformité OGC

L’Open Geospatial Consortium (OGC) fournit gratuitement des tests pour s’assurer de la conformité d’un serveur à certaines spécifications. Ce chapitre fournit un guide pas-à-pas rapide pour l’installation de tests WMS sur un système Ubuntu. Une documentation détaillée est disponible sur le site internet de l’OGC.

7.1. pyogctest

pyogctest est un outil Python dédié à l’exécution facile de tests OGC. L’installation peut se faire dans un environnement virtuel :

git clone https://github.com/pblottiere/pyogctest
virtualenv venv
source venv/bin/activate
pip install -e pyogctest/

7.2. WMS 1.3.0 test suite

Pour que la suite de tests WMS 1.3.0 fonctionne avec succès, un ensemble de données de test est nécessaire. Il peut être téléchargé en utilisant pyogctest :

./pyogctest.py -s wms130 --download

Après le téléchargement, un projet teamengine_wms_130.qgs est disponible dans le nouveau répertoire data. Ce projet doit être enregistré comme projet par défaut pour QGIS Server grâce à la variable d’environnement QGIS_SERVER_PROJECT_FILE. De cette façon, nous n’avons pas besoin de définir explicitement le paramètre MAP du fournisseur QGIS Server.

Une configuration spécifique est également nécessaire pour se conformer aux tests de métadonnées. En effet, certaines métadonnées sont disponibles dans le répertoire data/metadata et doivent être disponibles pour le cadre de test de OGC grâce à une URL. L’option la plus simple est de configurer votre serveur web pour qu’il puisse y accéder par le biais d’une adresse du type http://XXX.XXX.XXX.XXX/metadata/Autos.xml. Ces URL de métadonnées sont définies dans le projet et insérées dans le document WMS GetCapabilities. Le projet doit donc être mis à jour en fonction de votre environnement de test pour permettre au logiciel QGIS Server de générer un document XML valide :

./pyogctest.py -s wms130 -m http://XXX.XXX.XXX.XXX/metadata

Maintenant que tout est correctement configuré, nous pouvons lancer la suite de tests WMS 1.3.0 :

./pyogctest.py -s wms130 -u http://XXX.XXX.XXX.XXX/qgisserver