Skip to content
rjmartell edited this page Feb 19, 2016 · 22 revisions

WMTS 1.0 Conformance Test Suite

The selection and execution of tests is rather tortuous. A test run starts off in WMTS_ETS.xml and then executes the following steps:

  1. Fetch service metadata
  • Note: XML Schema validation is disabled by default. Schematron is not used at all to perform rule-based validation (to check constraints that are beyond an XML Schema grammar).
  1. call-function "wmtsBootstrap:bootstrap.restful" (check advertised capabilities, e.g. for RESTful messaging)
  2. call-function "wmts:testMenus" (select tests)
  3. call-function "wmtsFunctions:invokeTestGroupsForBinding" (run test groups)
  4. call-function "wmtsFunctions:invokeSelectedTests" (in wmtsFunctions.xml)
  5. call-test $testName
  6. call-function $functionName (in wmtsFunctions.xml; this file contains almost 30000 lines:exclamation:)

There is a draft ATS that offers some guidance regarding test coverage.

There are several test groups defined for each message encoding style described in the WMTS specification. Tests are associated with a test group in the bootstrap.xml file (see table below).

Message encoding Test groups
REST
  • CommonOperations.Mandatory.RESTful
    • Server.RESTful.HTTP.Mandatory
    • Server.RESTful.InvalidQueryString
  • GetCapabilities.Mandatory.RESTful
    • Server.RESTful.GetCapabilities.Request.Mandatory
  • GetTile.Mandatory.RESTful
    • Server.RESTful.GetTile.Mandatory
    • Server.RESTful.GetTile.Missing
    • Server.RESTful.GetTile.Invalid.Layer
    • Server.RESTful.GetTile.Invalid.TileMatrixSet
    • Server.RESTful.GetTile.Invalid.TileMatrix
    • Server.RESTful.GetTile.Invalid.Tile.Row.No.TileMatrixSetLimits
    • Server.RESTful.GetTile.Invalid.Tile.Col.No.TileMatrixSetLimits
    • Server.RESTful.GetTile.Invalid.Tile.Style
    • Server.RESTful.GetTile.Valid.Tile.Format
    • Server.RESTful.GetTile.Valid.Tile.Size
  • GetTile.Implemented.RESTful
    • Server.RESTful.GetTile.Optional
    • Server.RESTful.GetTile.Invalid.Tile.Row.TileMatrixSetLimits
    • Server.RESTful.GetTile.Invalid.Tile.Col.TileMatrixSetLimits
    • Server.RESTful.GetTile.Missing.Optional
    • Server.RESTful.GetTile.Invalid.SampleDimension.Value
    • Server.RESTful.GetTile.Default.SampleDimension
    • Server.RESTful.GetTile.Current.SampleDimension
    • Server.RESTful.GetTile.Valid.Tile.Transparency
  • GetFeatureInfo.Implemented.RESTful
KVP
  • TBD
SOAP
  • TBD
Clone this wiki locally