TestProject Forum

Job/Execution Parameters rather than project parameters

Hi there, I have times where I have to use project parameters as I need to set the parameter in one test and then use the parameter in the next test, for example, in the HRM section of our project a job might like like this

Test 1 - Generate random fields for a new employee
Test 2 - Navigate to URL, Click Create new employee, on the first tab fill in all of the fields from the generated parameter, navigate to the next tab, navigate back and check everything is filled, navigate to the second tab again and now fill in the fields from the generated parameters etc etc until all tabs are filled, then save the new employee
Test 3 - open the saved employee, navigate through each tab checking that the fields saved as expected

This is my job for “Create a New Employee”. There are quite a lot of fields to be filled in which resulted in test 2 being 165 steps long… so you can see why I can’t have all of this done on one test. Also, I reuse test 3 in other jobs to make sure other changes to the employee were saved as expected.

My problem is that I need to have a project parameter that relates to each field on the employee but this results in me not being able to run this job in parallel on different browsers.

It may not seem like a big deal, but I also use project parameters for our regression tests. 1 regression job takes 2.5 hours to run. I run it in 4 different browsers and I also run it for 4 different logins on Chrome. So I basically need to run this job 7 times.

You can’t run jobs in parallel if they use project parameters because the project parameter will get overwritten but I can’t use test parameters either. And before you tell me to use datasources, I can not use them because I rely on things being chosen randomly from dropdowns and I also rely on some parameters being set by reading text from the web.

For example, in my regression tests I save screenshots to a folder. The folder path is created as part of the job by getting the server name and version from the Web UI. This is not something I would know before the test is run so is not something I could add to a datasource.

Sorry for the long explanation but I have contacted support directly and I have joined seminars and asked this in Q&A and without the full details it’s hard to understand the use case.

What would be ideal for me would be instead of project parameters, to have something like a job parameter. It would work like the project parameter except that you could run the same job in parallel and it would not overwrite the project parameter. Essentially it would be like the job execution creates a copy of all the project parameters in the job and uses them while running the test instead. That way one job wouldn’t interfere with the other.

This would turn my 17.5 hour regression jobs into 2.5 hours. Literally saving me a whole day. I created a forum account just to request this, I don’t know how everyone isn’t asking for this!

I understand the issue as currently it’s not possible to have job level parameters, and it would defiantly solve the issue in this case, we have opened an improvement with the following number: TP-16033
This feature might take some time you will be notified here once it’s resolved.

That’s great, thank you!