Test Plans

What are Test Plans?

A Test Plan is a set of individual tests that are required to be performed in order to ensure that the required level of quality is met. Test plans can be categorised as four distinct types:.

  • Unit - Unit testing ensures that each component within the project delivery operates correctly independently.
  • Integration - Integration testing ensures that each component within the project delivery operates correctly as part of the whole system.
  • Performance - Performance testing ensures that the project deliverables operate within the required parameters, for example, volume, speed, etc.
  • Acceptance - Acceptance testing is the final stage of testing which ensures that the project delivery operates according to the customer’s acceptance criteria.

Project on Demand offers the ability to define, allocate and execute Test Plans which are placed directly into the Phase Progression.

Test Plans can be managed through the Test Plan Management Tool, the Tool can be accessed by clicking Open Tool through the associated "Define Test Plans" Goal in the Execution Phase of Phase Progression

Note: Accessing the Test Plan Management Tool through an associated Goal on the Phase Progression will automatically set that Goal's Status to In Progress if it is currently in a Status of Not Started.

Once defined the Phase Progression will have an option to View individual Test Plans that is accessible to any User with View Permission on the Test Plan Management Tool.

How should they be used?

The Test Plan management process within Project on Demand is as follows:

Project Management Process Step Action within Project on Demand
1 Identify and record the work package. Create a new Test Plan.
2 Allocate work package. Allocate Test Plan to a User.
3 Update progress of work package. Allocated User updates Completion % based on progress.
3 Complete execution of work package. Allocated User completes the execution.

Test Plan Properties

Name Description Possible Values
ID Unique Work Package reference number. Number - Generated by the application.
Type Used to broadly define Test Plans. Unit, Integration, Performance or Acceptance - Set by the application.
Title Title of the Test Plan. Text.
Objective Full description of the objective associated with the Test Plan. Text.
Prerequisites FILL ME IN. Text.
Forecast Time Forecast amount of days to execute the Test Plan. Number. (0 - 1000000000.00).
Completion % Percent of the Test Plan completed. Number. (0 - 100.00).
Tests Tests associated with the Test Plan. List of Test Plan Tests.
Execution Notes Notes added during Execution. Text.

Test Plan Test Properties

Name Description Possible Values
ID Unique Test Plan Dependency reference number. Number - Generated by the application.
Description Full description of the Test. Text.
Expected Result FILL ME IN. Text.
Actual Result FILL ME IN. Text.
Pass? FILL ME IN. Yes/No.

Managing

The Test Plan Management Tool can be used to Create, Edit, Allocate, Import and Remove Test Plans. The Executing of Test Plans is done by the allocated User on the Project Dashboard through either the Phase Progression or the "Internal Action" generated.

The Test Plans are categorised into four distinct Types, the Test Plan Management Tool has four tabs that correspond to these Types where Test Plans can be managed separately.

Test Plans displayed are sorted in ascending order by Status then ID and paged to 25 items per page.

Additional properties can be displayed by using the row details feature of the DataGrid.

Creating a new Test Plan

Clicking on the New button will display a child window so a new Test Plan can be recorded.

Tests can be created and removed using the New and Remove buttons respectively. Individual Tests can be edited using the "Inline Editing" feature of the DataGrid.

Once all properties are set the new Test Plan can be saved by clicking the Save button at the bottom of the child window. If any validation errors are encountered they will display at the bottom of the child window and must be rectified before the new Test Plan can be successfully saved.

Upon successful completion of creating a new Test Plan the child window will close, a success message will display at the bottom of the application and the newly created Test Plan will be selected in the DataGrid.

If the Cancel button is clicked, the child window will close and nothing will be saved.

Editing a Test Plan

Selecting a Test Plan and clicking on the Edit button will display a child window so the Test Plan can be edited. Alternatively the row can be double-clicked to perform the same action.

Note: A confirmation window will be displayed asking for confirmation to continue when attempting to edit a Test Plan that has already been allocated.

Tests can be created and removed using the New and Remove buttons respectively. Individual Tests can be edited using the "Inline Editing" feature of the DataGrid.

Once all necessary changes have been made the Test Plan can be saved by clicking the Save button at the bottom of the child window. If any validation errors are encountered they will display at the bottom of the child window and must be rectified before the Test Plan can be successfully saved.

Upon successful completion of the editing process the child window will close and a success message will display at the bottom of the application.

If the Cancel button is clicked, the child window will close and any changes will be cancelled.

Allocating a Test Plan

A Test Plan can be allocated to a User with Project access or set to a text reference of an "external" user. If allocated to a User they will be able to Execute the Test Plan on their Project Dashboard via the Phase Progression or Pending Actions. If the Test Plan is allocated to an "external" user referenced by text in the Responsibility Of property then the Test Plan will allow Execution to any Users with Edit Permission on the Test Plan Management Tool.

Selecting a Test Plan and clicking on the Allocate button will display a child window so the Test Plan can be allocated.

The Responsibility Of property of a Test Plan can be set to reference a User or text. If a User is selected from the drop-down any previously entered text will be removed and vice versa. If a User is selected for allocation, an "Internal Action" will be created for them in order to Execute the Test Plan.

A Due Date can be selected from the calendar, this value will set the Review Date and Due Date properties of the "Internal Action" that is generated by the application for the Execution of the Test Plan.

Once the Responsibility Of and Due Date properties have been set set the Test Plan can be sent out/marked for Execution by clicking the Allocate button. Upon successful completion the child window will close, an "Internal Action" will be created for any selected User and a success message will display at the bottom of the application. An email will be sent to any User selected notifying them they have an outstanding Test Plan Execution to complete.

If the Cancel button is clicked, the child window will close and any changes will be cancelled.

Removing a Test Plan

Selecting the Test Plan to remove and clicking on the Remove button will display a removal confirmation window. If Cancel is clicked the confirmation window will close and the Test Plan will not be removed. If Yes is clicked the selected Test Plan will be removed and a successful removal message will be displayed at the bottom of the application.

If the last Test Plan on a page is removed the DataGrid will navigate to the previous page upon successful removal.

Executing a Test Plan

Allocated Users can Execute a Test Plan via the Phase Progression by clicking the Test Plan to display the context menu then clicking the Execute option. Alternatively the "Internal Action" generated by the application will be displayed in the allocated Users Pending Actions and can be Executed by selecting the Action and clicking the Execute button or double clicking the Action itself in the DataGrid.

Test Plans allocated to an "external" user by setting the Responsibility Of property to a text reference will need to be Executed by a User with Edit Permission on the Test Plan Management Tool. The procedure detailed above via the Phase Progression can be used to Execute these Test Plans.

Once an Execute option has been clicked a child window will display so the Test Plan can be executed.

The Completion % can be edited along with the Actual Result and Pass? properties of any defined Tests. Any Execution Notes can be recorded in the text box provided.

Any changes made can be saved for future completion by clicking the Save button, this will close the child window, display a success message at the bottom of the application but will not complete the Test Plan Execution so futher changes can be made at a later time.

Clicking the Complete button will complete the Execution process, this will close the child window, any associated generated Action will be set to Completed and a success message will display at the bottom of the application.

If the Cancel button is clicked, the child window will close and any changes will be lost.

Importing Test Plans

Clicking the Import button will display the Import Test Plans child window.

In order to view and import Test Plans from another Project, a Project must be selected from the "Import from Project" drop-down at the top. The drop-down is populated with any Projects that have Test Plans identified.

From the Import button there are two options for importing Test Plans:

Import All - Import all Test Plans returned with the current search criteria. Please note: Test Plans on all returned pages will be imported.

Import Selected - Import any currently displayed Test Plans that have been checked in the Import column of the DataGrid. To check all Test Plans use the Check All button at the bottom of the child window.

Upon successful import the Import Test Plans child window will close, a success message will be displayed at the bottom of the application and the last of the newly imported Test Plans will be selected.

Concurrency Control

The Test Plans implement optimistic concurrency control.