Belangrijk
Vertalen is een inspanning van de gemeenschap waaraan u deel kunt nemen. Deze pagina is momenteel voor 92.86% vertaald.
8. OGC testen van aanpassingen
The Open Geospatial Consortium (OGC) provides tests which can be run free of charge to make sure a server is compliant with a certain specification. This chapter provides a quick tutorial to setup the WMS and OGC API Features tests on an Ubuntu system. A detailed documentation can be found at the OGC website.
8.1. pyogctest
pyogctest is een programma voor Python dat bedoeld is voor het eenvoudig uitvoeren van testen voor OGC. Installeren mag worden gedaan in een virtuele omgeving:
virtualenv venv
source venv/bin/activate
pip install pyogctest
8.2. WMS 1.3.0 testset
Een specifieke gegevensset voor testen is nodig om de WMS 1.3.0 testset met succes uit te kunnen voeren. Die kan worden gedownload met pyogctest:
pyogctest -s wms130 --download
Na het downloaden is een project teamengine_wms_130.qgs beschikbaar in de nieuwe map data. Dit project moet worden geregistreerd als het standaard project voor QGIS Server met de omgevingsvariabele QGIS_SERVER_PROJECT_FILE. Op deze manier hoeven we niet expliciet de vendor-parameter MAP van QGIS Server in te stellen.
Een specifieke configuratie is ook nodig om te voldoen aan de testen voor metadata. Inderdaad, sommige metadata zijn beschikbaar in de map data/metadata en moeten beschikbaar worden gemaakt voor het OGC testframewerk met een URL. De eenvoudigste optie is om uw webserver te configureren om toegang te verkrijgen door iets als http://XXX.XXX.XXX.XXX/metadata/Autos.xml. Deze URL’s voor metadata moeten worden gedefinieerd in het project en worden ingevoegd in het document voor WMS GetCapabilities. Het project moet dus worden bijgewerkt overeenkomstig uw testomgeving om QGIS Server een geldig XML-document te laten maken:
pyogctest -s wms130 -m http://XXX.XXX.XXX.XXX/metadata
Nu alles juist is geconfigureerd, kunnen we de WMS 1.3.0 testset uitvoeren:
pyogctest -s wms130 -u http://XXX.XXX.XXX.XXX/qgisserver
========================== OGC test session starts ============================
testsuite: WMS 1.3.0
collected 184 items
data-independent::basic_elements::version-negotiation::negotiate-no-version .
data-independent::basic_elements::version-negotiation::negotiate-basic_elements-version .
data-independent::basic_elements::version-negotiation::negotiate-higher-version .
...
...
...
=========================== 184 passed in 40 seconds ===========================
8.3. OGC API Features testset
Een test gegevensset is nodig om de OGC API Features 1.0 testset uit te kunnen voeren. Overwegende dat het onderliggende project van QGIS geen specifieke configuratie voor deze testset nodig heeft, kunnen we het bestand .qgs gebruiken dat wordt verschaft in de opslagplaats voor de training:
git clone https://github.com/qgis/QGIS-Training-Data
ls QGIS-Training-Data/exercise_data/qgis-server-tutorial-data/world.qgs
Na het downloaden is een project world.qgs beschikbaar in de map qgis-server-tutorial. Dit project moet worden geregistreerd als het standaard project voor QGIS Server met de omgevingsvariabele QGIS_SERVER_PROJECT_FILE. Op deze manier hoeven we niet expliciet de vendor-parameter MAP van QGIS Server in te stellen.
Nu alles juist is geconfigureerd, kunnen we de OGC API Features 1.0 testset uitvoeren:
pyogctest -s ogcapif -u http://XXX.XXX.XXX.XXX/qgisserver
=========================== OGC test session starts ============================
collected 56 items
collections::FeatureCollections::retrieveApiModel .
collections::FeatureCollections::noOfCollections .
collections::FeatureCollections::requirementClasses .
...
...
...
=========================== 56 passed in 24 seconds ============================