Conditional workflow transition based on screen input

Dave Ferguson December 12, 2012

Hi,

I am trying to solve a request from our QA department on how to handle a workflow transition in Jira. The request from Q/A was to add a way so that a task has to be tested by at least 2 Q/A people before the task passes Q/A. In our workflow we have a step "Being Tested" with 2 outgoing transitions "Testing Passed" and "Testing Failed". The transiton screen has Q/A fill out a field as to what platform they tested the issue in (windows or mac).

So, what I need to figure out is how to check for this condition... Tester passes issue and selects "windows" as tested platform. If item item has not been passed for "mac" then transition back to "being tested". If issue has passed both platforms then transition to "validated".

If anyone has an idea as to how I can accomplish this please let me know.

Thanks.

2 answers

0 votes
Renjith Pillai
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 6, 2013

There is an old document which talks about Parallel workflows without using a plugin - https://confluence.atlassian.com/pages/viewpage.action?pageId=180532

You need to test this in a test instance before trying out in the actual JIRA. Basically you will create two transitions, Testing Passed for Mac and Testing Passed for Windows and if both happens, it will reach the required destination status.

Otherwise the next option is have a workflow which has the transitions "Testing Passed", but it does not change the status and the issue remains in "Being Tested" itself, but just gets the platforms updated. And use the script runner and add a listener and if both values are selected transition the issue to the next status (have this transition in workflow protected by a condition for normal users)

0 votes
Florin Manaila
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 12, 2012

Hi Dave,

First off, you'll need a multi select for that "Tested platform" since you need to remember what platforms has this been tested on before.

Then you'll need a plugin that provides validators to do that. You should give JJupin a try. It provides an easy to use scripting language (SIL - Simple Issue Language) and will accomplish what you want with this simple script:

if( elementExists(customfield_xxxxx, "mac") && elementExists(customfield_xxxxx, "windows")) { 
// where xxxxx is the id of the "Tested platform" custom field
    return false, "customfield_xxxxx", "You need to test this on mac AND windows!";
}

Additionally, Blitz Actions can further improve this flow by creating additional buttons on the issue, which your testers can use to open a form and add more "Tested platforms" (provided it's a multi-select custom field) without having permission to edit the entire issue.

Hope this helps!

Suggest an answer

Log in or Sign up to answer