Provtest Scope

Provtest features advanced functions in several domains..

Flows

This section concerns Streams Flow (list of linked Streams Modules) abilities.
  • multiple flows declarations

  • validation points

  • per test flow assignment

Modules

This section concerns Streams Module abilities.

prov::ServiceOrder injection/expectation on :
  • attributes

  • dataset

FileHandle injection/expectation on :
  • filename

  • content

multiple output with or without sequencing validation

output port validation

validation using strict equality or regular expression matching

Objects

This section concerns Objects abilities.
  • object creation/deletion

  • attribute validation (using equality or regexp)

  • cardinality validation for a filtered type

  • objects filtered selection with object referencing

  • attribute setting

  • simplified so/sod/pod/wod creation/injection

operation invocation allowing :
  • in/inout parameters setting

  • out/inout parameters validation (using equality or regexp)

  • return value validation (using equality or regexp)

  • exceptions validation

  • returned objects referencing

System

Ability to run system calls and check stdout (using equality or regexp).

Unit tests

A "unit test" is, in the provtest scope, an element "test" in the provtest file.

A unit test should test one specific and delimited functionality.
  • positive/negative tests

  • positive/negative actions

  • synchronous and asynchronous actions

  • synchronization mecanism allowing to wait for the success (or failure) of an action

  • explicit and implicit flow loading

  • cleanup of user's objects, flow and/or file checkpoints

  • automatic scoping of object references with the test name