Test Case Scheduling

Alyvix Server provides a basic scheduler that takes the flows you have configured, and starts them at regular intervals on the sessions you assigned them to.

There are three main concepts to understand:

  • Session Workflows: A flow is a set of Alyvix test case aliases that are assigned to a session, drawn from the available test case aliases, which in turn are drawn from the Alyvix test cases whose files can be found in the global configured Test Case Path.

  • Scheduling Period: The length of time in seconds until Alyvix Server will try to run the next test case alias of the flow assigned to a particular session. Once all of the test cases in the flow have completed, the scheduler will restart that flow from the beginning.

  • Session State: An Alyvix Server session can be in one of these two states:

    • Ready: The scheduler is waiting to initiate a new test case alias

    • Busy: A test case alias is currently running in the configured session

Test Case Flow Assignment

After you have defined the session and test case configurations, you can begin to assign individual Alyvix test case aliases to a particular session. Once defined, you can then initiate the execution of test cases as described in the Test Case Flow Management section below.

Flow / Test Case Assignment Endpoint

Endpoint:

https://<alyvix_server>/workflow?username=<domain>\<username>

Example:

https://localhost/workflow?username=MS\johnsmith

In addition to using the endpoint above directly, you can use the flow management interface to arrive at the workflow assignment interface here, which allows you to determine which aliases will be included by simply ticking the checkbox for each alias (within a flow, test case aliases are displayed and run in the order they were entered).

The workflow interface.

Test Case Flow Management

The Management interface allows you to change the state of workflows, and can be accessed from the following endpoint:

Flow Management Endpoint

Endpoint:

https://<alyvix_server>/workflows

Example:

https://localhost/workflows

The Flow interface shown here displays the global controls for all available sessions on the current server on the first line, followed by a separate row for each individual session. Once a flow has at least one assigned test case alias, it is available for scheduling.

The workflows interface.

The main controls shown at the left allow you to manage the session state:

  • Run: Start the session using the scheduler, which will automatically execute the session’s assigned flow

  • Break: Force the currently running test case of a session to immediately proceed to its fail/exit section, then halt the scheduler until further action is taken

  • Stop: Force the currently running test case of a session to immediately stop without running either its fail or exit sections, then halt the scheduler until further action is taken

  • Manual: Stop the scheduler at the end of the current flow execution, then permit manual scheduling by inserting an endpoint URL specifying the flow name into the browser’s address bar (automated scheduling can be restarted with the Run action):

    Manual Scheduling Endpoint

    Endpoint:

    https://<alyvix_server>/v0/flows/run?username=<domain>\<username>

    Example:

    https://localhost/v0/flows/run?username=MS\johnsmith

The other elements in each row are:

  • Domain and Username: The name of the session, as defined on the session management page. Clicking on this element takes you to the flow assignment page, allowing you to define the sequence of Alyvix test case aliases that the scheduler will run for this session (see the preceding section).

  • Flow state: How that flow is currently executing (running or not running)

  • Session state: How the session is set to progress, as managed by a user action below