Microsoft.SpecExplorer.DynamicTraversal Namespace

The Microsoft.SpecExplorer.DynamicTraversal namespace contains types that support Spec Explorer's dynamic traversal feature.

To create a custom dynamic traversal strategy, create a class that implements the IDynamicTraversal interface. This namespace also defines CallTransitionDelegate, ReturnTransitionDelegate, and EventTransitionDelegate transition delegates. When Spec Explorer initiates dynamic traversal, it calls the RunTestSuite method of the traversal class. To indicate which action invocations to follow during a dynamic traversal test session, the traversal class calls the associated traversal delegates.

The RandomCoverageDynamicTraversal class provides a default dynamic traversal strategy. It traverses the unvisited states using a random order to guarantee the transition coverage.

For more information about dynamic traversal and implementing and using a custom dynamic traversal strategy, see Testing, Test Generation, and Test Code Generation Switches.

Classes

Class Description
CoverageDynamicTraversal A coverage dynamic traversal.
DynamicTraversalBase An abstract dynamic traversal base class which can be inherited by a customized dynamic traversal.
DynamicTraversalHelper  
RandomCoverageDynamicTraversal A random coverage dynamic traversal.

Interfaces

Interface Description
IDynamicTraversal The interface to describe a dynamic traversal test strategy.

Delegates

Delegate Description
CallTransitionDelegate A delegate to represent a call invoke to SUT
StateNotificationHandler Delegate used to handle state reached event.
StepNotificationHandler Delegate used to handle step taken event.
EventTransitionDelegate A delegate to represent an event check received from SUT.
ReturnTransitionDelegate A delegate to represent a return check received from SUT.
TestHousekeepingHandler A delegate used for test initialize and test cleanup.

Enumerations

Enumeration Description
TestSuiteStatus The status of executing test suite