Skip to main content

[WIP] A black box verifier for the OGC API Specification

Project description

OGC API Test Client

A black box verifier for OGC API specifications

Installation

This package is available on PyPi and can be installed with pip

$ python -m pip install ogctests

Usage

Command Line Interface

The test suite is designed to be run from the command line. At least one scope and an instance URL must be provided.

$ python -m ogctests <scope_1> [<scope_2>] -i <instance_url>

Python callable

The test suite can also be called from within your python code by importing the run_ogctests function from the main module

from ogctests.main import run_ogctests

scope = "features/core"
run_ogctests(scope)

You can optionally override the HTTP client used by the ogc test suite by passing a value to the test_client argument. This is especially useful if you want to integrate the ogctests into your own test suite, and have it use your own test client.

from fastapi import FastAPI
from fastapi.testing import TestClient

from ogctests.main import run_ogctests
app = FastAPI()
client = TestClient(app)

scope = "features/core"
run_ogctests(scope, client)

Thus, all requests made by the ogctests test suite will be done using the fastapi.testing.TestClient instead of the default httpx.Client declared in the ogc test suite.

Scoping

For instructions on how to scope the tests, call the package with the -h flag.

$ python -m ogctests -h

Reporting

Reporting to stdout is as per normal pytest output. To increase the verbosity of the output set the -v flag to True. To create a detailed report of the test run, set the -r flag to True. This will create a junitxml report in the users home folder under ogctestsReporting/<date>.xml

What it Does

In line with the Official OGC test suite (written in Java), this Python-based test suite will verify the compliance of a given endpoint with the OGC API - Features - Part 1: Core specification.

The test suite only tests against the OGC API - Features - Part 1: Core specification, But may be expanded in the future.

See also

An introduction to the OGC API specification

OGC API — Features — Part 1: Core

Official OGC test suite

Implementors

https://github.com/opengeospatial/ogcapi-features/tree/master/implementations/servers

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ogctests-0.1.13.tar.gz (24.3 kB view hashes)

Uploaded Source

Built Distribution

ogctests-0.1.13-py3-none-any.whl (39.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page