Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Table of Contents

...

minLevel1
maxLevel2

Under "Administration" in the

...

"Workflows" area, the Testify environment can be automated. The principle is similar to an "if-then logic": Certain events can be defined

...

Add a new Workflow

...

that trigger actions. For this purpose, triggers/filters and parameters can be stored to set restrictions. These workflows can be edited, deactivated and reactivated, but not deleted.

Searching for specific workflows is facilitated by the search button in the upper right corner. After selecting the magnifying glass, a specific workflow title can be entered to be searched for.

It is possible to apply specific filters to the listed workflows. To filter the workflows, click on the Filter button. Several filters can be selected at the same time. The filter will take effect if the field is actually selected (example restriction to test object type "Machine"). The filter does not take effect if the "Machine" test object type was selected in the filter, but no workflow was explicitly restricted to it.

Image Added

Create workflow

When adding a new workflow, a title must be defined. The title should be meaningful so that

...

it is already

...

clear in the menu which task the workflow

...

fulfills. A description can be added optionally.

The triggering event must be created first, followed by the subsequent action. If needed, multiple triggering events and actions can be added. Each event, each action and the entire workflow must be saved separately.

Image Added

Image Added

Panel
panelIconIdatlassian-info
panelIcon:info:
bgColor#F4F5F7

Examples under Workflow Examples

Logic

To create a successful and functioning workflow, it must actually be possible. Illogical combinations cannot be executed. If a workflow was created, triggered, but not executed, this is a sign that it has failed. In this case it is recommended to check and change the workflow for correctness. Examples of possible errors at: https://testify.atlassian.net/wiki/spaces/TWN/pages/1606615347/Workflows#Possible-errors-or-uncertainties

  • Depending on the action and event, there are different types of filters/triggers.

    • Example: Test object type, status

  • There are different choices per filter type.

    • Example: Status Done or Verified

  • The different filter types add up. The workflow is then triggered if both filters apply.

    • Example: Test object type Business Units AND Status Done

  • It is also possible to select multiple choices within a filter. These are in an OR-relationship, which means that one of the two variants must apply in order to trigger the workflow. The workflow is then triggered when one of the two statuses applies.

    • Example: Status Done OR Verified

  • If different selection options were selected for several filter types, a combination of both logics takes place.

    • Example: Test object type Control Cabinets OR Business Units AND status Done OR Verified

  • Reuse field value from event if possible (overrides selection above): If this fallback is enabled, values from an event are used for the action. This is only possible if there are actually previous values.

    • Example: Event checklist Done → action create checklist. Toggle (fallback) is activated for the action at the "Assigned to" filter → new checklist is automatically assigned to the same person/group from the event.

  • Pay attention to the permissions: If notifications are sent due to an event, only those users with the appropriate permissions will receive them.

Image AddedImage Added

Image Added

Image AddedImage Added

Image Added

Events

In the

...

"Events" section, steps must be defined that must be fulfilled in order to trigger the action. Before creating further events or actions, it is important to save the event. When creating events, the following

...

information must be specified:

Mandatory

  • Scope:

...

  • the scope defines the entity

...

  • in which the event takes place.

...

  • Possibilities: Checklist, issue, test object, PDF, user, timer

  • Type:

...

  • the type defines the entity change

...

  • and depends on the entity.

...

  • Possibilities: created, changed, generate

Not mandatory

  • Filter/Trigger: Filters can be

...

  • used to

...

  • specify the

...

  • conditions. Here it can be defined that the event

...

Actions

...

  • is valid only under certain conditions. Depending on the selected type, the following choices appear:

    • Type created:

      • Filter: Filters according to properties of the object.

        • Example: Test object type Machines → The workflow is triggered if the test object type Machines was selected.

    • Type changed:
      Important: The workflow is only triggered when the status or assignment has changed.

      • Trigger: Defines a field that must be changed to a specific value to trigger the workflow. This condition must be met for the workflow to be triggered.

        • Example: Status Verified → The workflow is triggered when the status changes to verified.

      • Filter before change: Filters according to properties of the object before the change. The filter before change is only applied if the property has actually changed. If the property before and after the event is the same or incorrect, the workflow is not executed because the filter does not apply.

        • Example: Status Done → The workflow is triggered if the status before the change was done and after the change is different (e.g. verified).

      • Filter after change: Filters by properties of the object after the change (This condition must be true at the time the workflow is executed).

        • Example: Status Verified → The workflow is triggered when the status changes to verified after change and was previously different (e.g. Done). A filter before change can, but does not have to be defined.

Panel
panelIconIdatlassian-info
panelIcon:info:
bgColor#F4F5F7

It is possible to combine the filter types with each other. The prerequisite for this is again logic and meaningfulness. Faulty workflows do not work.

The following combinations are possible:

  • Trigger & Filter before change

    • e. g. Trigger: Status Done & Filter before change: Status Open

  • Filter before change & Filter after change

    • e. g. Filter before change: Status Open & Filter after change: Status Done

  • Trigger & Filter after change

    • e. g. Trigger: Status Done & Filter after change: User XY

  • Trigger & Filter before change & Filter after change

    • e. g. Trigger: Status Done & Filter before change: Status Open & Filter after change: Status Done

Scope: Checklist

  • Type: created

    • Possible filters: Test object (types), State, Assigned to, Created by, Modified by, Checklist templates, Custom fields (test objects)

  • Type: changed
    Important: When using filters, the workflow will only be triggered if the status or assignment has changed.

    • Possible triggers: State, Assigned to, Modified by

    • Possible filter before change: Test object (types), State, Assigned to, Modified by, Checklist templates

    • Possible filter after change: Test object (types), State, Assigned to, Created by, Modified by, Checklist templates, Scoring, Custom fields (test objects)

Scope: Issue

  • Type: created

    • Possible filters: Test object (types), State, Assigned to, Created by, Modified by, Category, Severity, Custom fields (issues), Custom fields (test objects)

  • Type: changed
    Important: When using filters, the workflow will only be triggered if the status or assignment has changed.

    • Possible triggers: Test object, State, Assigned to, Changed by, Category, Severity

    • Possible filters before change: Test object (types), State, Assigned to, Modified by, Category, Severity

    • Possible filters after change: Test object (types), State, Assigned to, Created by, Modified by, Category, Severity, Custom fields (issues), Custom fields (test objects)

Scope: Test object

  • Type: created

    • Possible filters: Test object types, Created by, Custom fields (test objects)

Scope: PDF

  • Type: Issue PDF generated

    • Possible filters: Test object (types), State, Assigned to, Created by, Modified by, Category, Severity, PDF protocol profiles

  • Type: Checklists PDF generated

    • Possible filters: Test object(s), State, Assigned to, Created by, Modified by, Category, Checklist templates, PDF Protocol Profiles

Scope: User

  • Type: created

  • Possible filters: Roles, Groups

Scope: Timer

  • Type: trigger

  • Parameters: Cron timer

The timer feature allows tasks to be scheduled periodically. This is possible via a cron timer. The timer feature can be set based on minutes, hours, days, weeks or months. The cron trigger always refers to the UTC time zone, times must therefore be converted if necessary (e.g. 12:00 UTC is 14:00 CEST in Austria).

The desired repetition can either be specified directly in the cron format or selected and converted manually in advance. There are two possibilities when converting the desired repetition:

  • External converter: select desired repetition online and convert it

  • Selection of the desired repetition including automatic conversion directly in Testify:

    Image Added
    • Minutes

      • e.g. every 30 minutes

    • Hours

      • e.g. every 2 hours or always at 10:00 AM UTC

    • Daily

      • e.g. every 2 days or weekdays incl. desired time (e.g. 10:00 AM UTC)

    • Weekly

      • Specification of the desired weekdays e.g. only Mondays, Monday & Friday or Monday-Saturday incl. desired time (e.g. 10:00 AM UTC)

    • Monthly

      • Specification of the exact day (e.g. 4th day per month) or

      • Last day of the month or

      • Last weekday of every month or

      • Indication of days before the end of the month (e.g. 2 days before end of month)

      • incl. desired time (e.g. 10:00 AM UTC)

Example:

Actions

In the "Actions" section, the action triggered by the triggering event is defined. Before creating further actions or saving the workflow, it is important to save the action. Since some actions are only enabled after saving an event, it is recommended to create actions only as a second step.

When creating actions, the following information must be specified:

  • Scope: The scope defines which action should be triggered.

...

  • Type: The type defines the change of the entity.

  • Parameters: Parameters for the triggered action

...

  • must be defined here (such as test objects, checklist templates, etc.). In this section, the values

...

  • already defined in "Filter" above

...

  • can be easily reused

...

  • by selecting the

...

  • "Reuse field value

...

  • if available from event" button.

    • Defining all parameters is mandatory in this section.

Scope: Checklist

  • Type: create

    • Parameters: Test object, Assigned to, Created by, Checklist templates, Due date

  • Type: change

    • Parameters: Assigned to, Changed by, Due date, Reopen checklist

...

Action: Webhook

Based on events within Testify, webhooks can also be added independently as actions in workflow management. This is possible by selecting the scope "Webhook" with the type "trigger". An URL is to be specified as parameter, optionally an identifier can be entered:

...

Action: Generate PDF

The generation of PDF protocols can now be automated as an action via a workflow. This process automation is to start the generation of PDFs for the filtered checklists. Filters can be set based on the events to define exactly for which check objects or checklists, for example, the automated PDF generation should take place.

As a prerequisite for this automatism, it is necessary to define a corresponding event in advance:

  • Scope: checklist

  • Type: changed

  • Remaining filters as desired

After that the action can be defined:

  • Scope: PDF

  • Type: generate

  • Parameters: Selection of the desired PDF protocol profile and language.

...

Edit / disable workflows

...

Scope: Issue

  • Type: create

    • Mandatory parameters: Assigned to, Created by, Category, Severity, Due date

    • Optional parameters: Test object, title, description

Scope: Webhook

Scope: PDF

Only possible for events with scope checklist or issue.

Scope: Notification

Scope: Calendar Entry

  • Type: sende

  • Notes

    • It is recommended to add two events at once (type created and changed), so that you not only get a calendar entry when it is created, but also an update of it when the event is updated.

    • The event will be updated only if the due date or assigned user changes.

      • If the event is later assigned to a new user, the original user will receive a cancellation of the appointment in the calendar.

Scope: Testobject

Delay

Delays can be added in order to execute actions only at a later time.

Edit / deactivate workflow

After the workflow has been created, it can be edited or disabled/enabled by clicking on the context menu (the three dots) in the upper right corner of the

...

workflow.

Image Added

Workflow-History

Workflows have a history where all previous steps are displayed. This feature allows to check the successful and failed executions of all workflows. For each execution attempt, a separate entry is created with all relevant information.

...

Filters can be set to ensure transparent troubleshooting

...

.

...

It also shows when a workflow was activated/deactivated and whether this was done automatically or manually by a person.

The workflow history can be

...

displayed by clicking on the context menu (the three dots

...

in the

...

right corner).

...

This is possible either in the workflow overview, but also within a workflow:

Image Added
Image Added

By selecting the desired entry, the history is displayed:

...

Image Added

All important information can be seen at a glance. Through the link icon on the right side next to the text, the individual points can be expanded and further details can be displayed

...

:

...

Examples for practical Workflows

1) Initiation of a checklist when adding a test object

...

Event:
When a new test object gets added by “Testify Admin“ to “Airport Frankfurt” then the action will be carried out.

Action:
A “New Item - Airport Frankfurt“ checklist gets created for the added test object by “Testify Admin”, assigned to “Engineering”, “Due date (+days since event): 7; Time of day: 12:00pm”.

2) Initiation of a checklist when an issue was created

...

Event:
When a new issue with the category “Logistic error“ gets added to “Airport Frankfurt” then the action will be carried out.

Action:
A “Logistic Issue - Checklist“ checklist gets created for the test object where the error occured by “Testify Admin”, assigned to “Engineering”, “Due date (+days since event): 3; Time of day: 12:00pm”.

3) Initiation of a sequence of related checklists

...

Event:
When a “General Checks” checklist get created on a “Airport Frankfurt“ test object then the action will be carried out.

Action:
1) A “Electrician - Checklist“ checklist gets created for the same test object by “Testify Admin”, assigned to “Electricians”, “Due date (+days since event): 7; Time of day: 12:00pm”.

2) A “Mechanics - Checklist“ checklist gets created for the same test object by “Testify Admin”, assigned to “Mechanics”, “Due date (+days since event): 7; Time of day: 12:00pm”.

4) PDF generation after checklist execution

...

Event:

When a checklist is created for a test object "Frankfurt Airport", the action is executed.

Action:

The Extended Standard Protocol is generated the checklist is updated.

5) Webhook: Save PDF protocol to external system

PDF protocols can also be automatically stored in external systems. For this purpose, an interface can be built by the customer, based on our webhook, which stores the generated protocols at the desired folder.

...

Event:

When an extended standard protocol is created for a checklist with the test object "Airport Frankfurt", the action is executed.

Action:

Image Added

When using delays, there are the following options that are displayed depending on the status:

  • Open/Planned Actions: Date and time of the trigger" and "Date and time of planned execution"

  • Successful and failed actions: "Date and time of execution"

  • Disabled workflow ""The workflow got disabled during the delay"

  • Workflow does not match the event: "The filter after the delay did not match the requirements"

Possible errors or uncertainties

Events

Missing or wrong filter/trigger for event

When using filters, the workflow is only triggered when the status or assignment has been updated.

  • Faulty event: workflow for modified checklists restricting to one checklist template when filtering before modification.

    • Scope: Checklist

    • Type: Updated

    • Filter before change: A checklist template
      → Since the checklist template will not change, the workflow will never be triggered. Users might think that they trigger every checklist change as an event. However, since the checklist template will not change, the workflow will not be triggered.

  • Corrected and working event

    • Scope: Checklist

    • Type: Updated

    • Filter before change: Status Done, Verified

  • Trigger Assigned to person X is only possible if the value has actually been updated.

    • If the property before and after the event is the same or incorrect, the workflow is not executed because the filter does not apply.

Incorrect or illogical filtering

  • Event: Checklist created → Filter Status Verified.

    • A newly created checklist is always in status Open. The filter Status Verified makes no sense here.

  • TTrigger Status Done and filter after change Status Verified

    • If the workflow is to be triggered on Status Done OR Verified, this must be mapped using Filter after Change.

  • Frequent ambiguity: Event → Checklist Updated → Status in process.

    • As soon as a checklist is started, the checklist is in status in process. Already then the workflow is triggered and not only when exiting.

Info

Examples under Workflow Examples