User choses the data variation in Test Manager -> Data-Driven Test Cases

Feature request
A user can introduce new test data variations without the need for the test developer to update the test case with the new data variation in UiPath Studio.

Background
We are currently delivering test automation projects to internal customers. Each of the application has a team who is responsible for creating new release cycles this includes the testing team / managers. Our scope is to deliver test automation, most of which are data driven test cases part of test sets run on user defined schedules.

One of our projects would greatly benefit if the test manager can himself/herself update new test data into the existing test case by using the Test Manager UI. The robot code is independent of the test data.

Challenge
The challenge now is the way Data-Driven tests work in UiPath test cases. When we set a data-driven test case, the data variations are applied and in arguments are set according to the column names of the test data excel sheet. Later, this test data is converted into json format but this file is not developer readable / editable during debug/robot runtime.

The reply in this thread is not an ideal solution to this challenge. It creates test developer overheads, which can easily be avoided.

Two suggestions

  1. The end user can update the test data directly from UiPath test manager interface.
    The user with permissions to the project can update the test data values (not keys) to any value they intend. The user can also specific what kind of test assertion is to be expected.

    Benefits

    • The test data update will not trigger a new redundant project version in Orchestrator (no need to publish new versions)

    • User chooses when and where and what test data keys is to be updated

    • Decreasing the change management tasks for test developers

    • Enforcing the developers to always develop robust test automations which can be user tested with novel test data

                                                          **OR**
      
  2. The current json file linking test data to test case variations is NOT open to developer/robot manipulation in debug or robot runtime.
    The json file / hidden link file is converted to a standard json file which can be manipulated during robot runtime. Currently, this file is not explorable in windows explorer, probably some linked file or hidden file with . notation file.

    Benefits

    • The developers can then let the end users use an excel sheet and developer reads this excel sheet to populate the new test data values into the json file, this json file is read by the test case under runtime.
    • The test data update will not trigger a new redundant project version in Orchestrator (no need to publish new versions)
    • User chooses when and where and what test data keys is to be updated
    • Decreasing the change management tasks for test developers
    • Enforcing the developers to always develop robust test automations which can be user tested with novel test data

PS
We have tried Test Data Queues and excel file containing test data from a shared folder path / storage bucket. Both of these added a lot of maintenance overheads.

We have used test data queues, but the way they are setup is also not ideal for our scenario, we run these tests daily and once the test data from test data queues is consumed, it has to be reset and this does not happen automatically after each test set. This means that we need some way to ensure that the test data queues have testing data in queue. Again, creating unnecessary developer overheads.

Thank you for your consideration and efforts.

2 Likes


navigate to 3Dots
Hi jeevith hegde,
I hope you can find the solution here, we have recently updated our Test_Queues driven data is updated directly to the Orchestrator test manager,
Click on orchestrator testing panel>Test data Queues>Select your Queue item>Navigate to Three dots
image
There you’ll find “Upload item” click on that > it redirects to browse’ CSV( queue data file)’ >Upload once its done you can check with view Items. Please make sure the uploaded file contains line items <15k.
browse file from your local folder or path
after selecting file upload  (1)

I hope this will help .

Thanks.

Hi @GANESH_BALAGAM,

Thank you for your reply.

As I noted in the feedback post, the way Test Data Queue works, we need to have additional steps to ensure that the test data needs to be set to not consumed after the test case has consumed the test data. In the screenshot above Is-Consumed will be set to check when the test case has run.

To manage this for a regression based test case will be an added overhead.

Could you specify how you have planned to avoid this reoccurring overhead? We do not see a way to set Is-Consumed to blank from the robot. But if you have found a way we are interested to know.

As of now, I will keep the original ask open and wait for the issue tracker to consider this.

H Jeevith,

reading through the read I understood…

  • you have the need to change test data dynamically
  • test data queues right now do not offer the convenience you need
  • I assume test data service is not in use on your end? (as this can be used as a dynamic data source as well)
  • as a conclusion I assume the easist way for you would be e.g. a reference to an Excel sheet on a file share?

Pls confirm or correct if I missed something important.

thx a lot.

Hi @ThomasStocker,

That is correct.

  • We would like to provide the Test Manager (person) permissions to access Test Manager and update the test data as and when they want (adhering to the same structure already defined in the test case links)

  • Test Data Queues and its Is-Consumed parameter makes it difficult to set a test set schedule and forget. We have to replenish the Test Data Queue with new data periodically.

  • We do not use Data Service otherwise it would have been another alternative we could use.

Challenge with an excel file on shared drive

  • Even if we had a reference file to the Excel Sheet on a file share, when the Test Manager (person) wants to test on new test data variations, a test developer will need to open the test case in Studio and update the test data linked to test case actively and then publish a new version to Orchestrator. If we skip this the data in the package will be old data as this data update does not occur automatically.

    If there was a Boolean or a setting which forced the already packed version of project to update test data automatically on runtime, by fetching the values from the shared excel file and then update / convert it to json and link it to the respective test case. Doing so will also ensure that the input arguments created when linking the data will remain as is and no additional logic needs to be implemented by the test developer.

Thank you for your efforts.

1 Like

There are plans to get test data editing into Test Manager but there is no release date yet. So, likely will not arrive in the first half of the year. We will send out an information with the release notes. Thanks for the feedback and the description of your challenges.