A practical solution for creating reusable work-flow

I have demonstrated the approach I used in my project as below. The idea was that I created my workflow test cases as generic as possible and all of them have neccessary params to perform the action. These params are passing over steps with the value from Data binding area. For example: my Test Data is an excel sheet having data for a list of username, password and profile. These value are row-by-row passing to the test case in test suite, and finally passing to Workflow Test case.

Test Case Workflow.png


Great job ! please provide detail project to run on this please

can you share the project structure also @Trong Bui ? i’m confuse of the diagram :smiley:
Is there any call test case inside another test case there?


Great work Trong Bui.

We have used similar approach as well

Here is the sample project demonstrating the flow

We went ahead 1 more step I guess, We used DataMap which is pass to ‘Pages’ in above example so that you do not need to define all variable in ‘Pages’ test cases.

e.g. Rather than calling -

WebUI.callTestCase(findTestCase(‘Advance Examples/Pages/Create Issue Page/Create a new issue with these information’), [(‘project’) : project
, (‘issueType’) : issueType, (‘priority’) : priority, (‘description’) : description, (‘summary’) : summary], FailureHandling.STOP_ON_FAILURE)

we call as

WebUI.callTestCase(findTestCase(‘Advance Examples/Pages/Create Issue Page/Create a new issue with these information’), [(‘myMap’) : dataMap], FailureHandling.STOP_ON_FAILURE) where dataMap is variable declared in test case

Hi, I have a doubt related to best practices.
For example, if i have 2 diferent test scenarios where first one’s output is the input for the following test case:
1. Create a ticket
2. Assign a ticket
What is the best approach for handling this kind of test cases?
Create another one that calls both test cases?

Hey Martin,

Yes you can do that - create another test case calling both test case however what if you only want to execute 1st test case, then again you have to rewrite.

We have same scenarios where we need input data from another test’s output data.

What we do is we write output data to csv in specific column, (probably same csv we use in datamapping) once 1st test is executed, Write custom code to save output in CSV

in 2nd Test case, Check before calling test case if specific column in csv has data then execute else fail test case. Let me know if you need more info

1 Like

how to attach external csv file(not report file) in mail?
i have excel sheet, i have to attach that excel sheet in mail. or i have to paste excel sheet in mail body. In katalon, no option to attach external excel sheet or paste excel sheet dynamically.
Could you please help me.