• Success
    Manage your Success Plans and Engagements, gain key insights into your implementation journey, and collaborate with your CSMs
    Success
    Accelerate your Purchase to Value engaging with Informatica Architects for Customer Success
    All your Engagements at one place
  • Communities
    A collaborative platform to connect and grow with like-minded Informaticans across the globe
    Communities
    Connect and collaborate with Informatica experts and champions
    Have a question? Start a Discussion and get immediate answers you are looking for
    Customer-organized groups that meet online and in-person. Join today to network, share ideas, and get tips on how to get the most out of Informatica
  • Knowledge Center
    Troubleshooting documents, product guides, how to videos, best practices, and more
    Knowledge Center
    One-stop self-service portal for solutions, FAQs, Whitepapers, How Tos, Videos, and more
    Video channel for step-by-step instructions to use our products, best practices, troubleshooting tips, and much more
    Information library of the latest product documents
    Best practices and use cases from the Implementation team
  • Learn
    Rich resources to help you leverage full capabilities of our products
    Learn
    Role-based training programs for the best ROI
    Get certified on Informatica products. Free, Foundation, or Professional
    Free and unlimited modules based on your expertise level and journey
    Self-guided, intuitive experience platform for outcome-focused product capabilities and use cases
  • Resources
    Library of content to help you leverage the best of Informatica products
    Resources
    Most popular webinars on product architecture, best practices, and more
    Product Availability Matrix statements of Informatica products
    Monthly support newsletter
    Informatica Support Guide and Statements, Quick Start Guides, and Cloud Product Description Schedule
    End of Life statements of Informatica products
Last Updated Date May 25, 2021 |

Challenge

In many cases, distinct roles are used with different ActiveVOS processes. In order to ensure that testing is comprehensive, it is important that code is tested using all possible variations of the roles required. Because a user may be given different roles for specific situations, testing can miss code flaws and cause gaps in tested use cases if these role variations are not accounted for.

Description

This document discusses best practices for testing code with roles in ActiveVOS.

What to Test

Every role assigned on an ActiveVOS business process management project (BPM) project has some functionality associated with it. That functionality needs to be tested for a user operating in a number of given roles. To ensure that testing is comprehensive, tests must also be carried out when the user does not have those roles assigned, to ensure that they cannot operate beyond their authority.

Information Needed

Before testing can begin, gather the following information:

  • All assigned roles
  • All functions for each assigned role (cross-reference functions against each role)
  • Description of what a user with a given role CAN do
  • Description of what a user without that role CANNOT do
  • Determine if a user can have multiple roles
    • If so, what are the possible combinations
    • Each combination should be treated as a unique role for testing purposes

Set up Users to Test

For each possible combination of roles create a user.

Example

Roles:

  1. RoleA
  2. RoleB
  3. RoleC

Functionality:

  1. Process1
  2. Process2
  3. Process3
  4. Process4
  5. Process5

Cross Reference

 

Process1

Process2

Process3

Process4

Process5

RoleA

 

 

 

 

RoleB

 

 

 

RoleC

 

 

 

Multiple Roles:

  1. A user with Role A can only have Role A
  2. A User can have RoleB and RoleC

Set up Users:

  1. UserA has Role A
  2. UserB has Role B
  3. UserC has Role C
  4. UserBC has Role A and Role B

Specify Tests

Test each process with each user.

 

Process1

Process2

Process3

Process4

Process5

UserA

Must work

Must fail

Must fail

Must fail

Must fail

UserB

Must fail

Must work

Must work

Must fail

Must fail

UserC

Must fail

Must fail

Must fail

Must work

Must work

UserBC

Must fail

Must work

Must work

Must work

Must work

 

Multiple Tasks Within a Workflow

It is also important to consider that a workflow may contain multiple tasks and multiple submission options for each task. Permissions for these options are typically managed by role permissions in MDM/P360 It is important to test each option for each user.

Roles:

  1. UserRole
  2. ManagerRole 

Functionality:

  1. ReviewTask
    1. AssignTask
    2. ApproveTask
    3. RejectTask
  2. ApprovalTask
    1. AssignTask
    2. ApproveTask
    3. RejectTask

 

 

ReviewTask

ApprovalTask

 

Assign

Task

Approve

Task

Reject

Task

Assign

Task

Approve

Task

Reject

Task

UserRole

 

 √

 

 

 

 

 

ManagerRole

 √

 

 √

 

 

 √

 

Summary

Specify roles when there are restrictions or authorization requirements for particular functionality. If roles and role combinations are not tested separately, issues with the code are more likely to be missed. To ensure the robustness of the code, specify each variation to be tested, document what is expected, and then test.

Table of Contents

Success

Link Copied to Clipboard