How should I create test cases for complex system that provide usage for multiple roles such: super admin, admin, customer service etc. The capabilities such: create, read, delete and update for specific role. I might need simpler format to execute both for manual and automated.

I think about breakdown the test cases into each roles. But that means i would repeat same steps/cases for roles that doesn't have significants difference.

Any suggestion about test case for multiple roles format would be very appreciated.

5 Answers 5


The checklist will be handy to specifically test the roles and permissions faster in manual testing. Below is a simple sample snapshot of scenario for your question for manual testing:

enter image description here

For automation, you have to map the options in an excel or in a file and manipulate it.


I would break it down, but apply the DRY principle (Don't Repeat Yourself).

First, I would create a matrix with the different testcases and their respective expected results, similar to what Bhavani's answer shows.

Then, I would write out a testscenario A with all the test steps for one of the roles (X), with a reference to the table for the expected results.

Then, I would make a new testcase that simply says "Repeat testscenario A, but for role Y instead of role X.


In terms of format, the already provided answers are good. However, I'd take exception to the statement "But that means i would repeat same steps/cases for roles that doesn't have significants difference." If they are represented differently in a database somewhere, they almost certainly do have a significant difference. Somewhere, there is logic in the code that says

if role == {role1, role2}:
  do x
else if role == {role3, role4}:
  do y
  do z

That is a significant difference, and you can't be sure that role1 and role2 will always be together in the above statement. So you have to make sure you test all possibilities in the matrix, both positive and negative.


Use BDD framework. It make all boring work for you and scenario is clear for manual testers Specflow BDD, example:

Feature: Communication Type Create

Scenario Outline: Communication Type Create by Communication admin

    Given <role> login on "admin" portal with login "<admin>" and password "*****" 

    Given In footer click button "New"
    Given In expanded menu click menu for create "Communication type"
    When  Fills "Communication type details" form:
        | title   | description   |
        | <title> | <description> |

    When  In notification bar wait displaying what action is "successful"
    ........... Some other action may be ......................

    | role                           | admin               | title                | description                           |
    | Customer Communication Admin   | [email protected]  | Communication type 1 | enter by customer administrator admin |
    | User Communication Admin       | [email protected] | Communication type 2 | enter by user Communication Admin     |

Execution of test cases is not big concern for QA guy. Big issue is how to write them in proper way (i.e. DRY which was already said by Cronax).

The issue's impact depends to the product's scope. Let's supposing that there are 3 different action and 19 different page for all roles. A role can edit or view or not see that pages. In this case, I think test cases should be taken into consideration as Broad Stack Test. Because there should be some test for that pages specific functionality.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.