TruClient nested Dynamic Transactions have 100 ms differences

In our testing, we often nest a transaction inside our overall main transaction that includes additional information to allow us to filter and report on additional criteria. When implementing this in TruClient using Evaluate JavaScript steps, we see differences in these transaction time ranging from 100-300 ms difference. For a transaction that takes several seconds, this might be OK, but for one that takes milliseconds I would see this being an issue. Does anyone have any guidance here or a different suggestion on how to accomplish the same thing?

e.g.

Eval JavaScript includes

TC.startTransaction("TC_FlexTime_TimeTile_TileLoad");
TC.startTransaction("DONOTUSE_TC_FlexTime_TimeTile_TileLoad_" TC.getParam("Tag")); 

the closing Eval JavaScript includes

TC.endTransaction("DONOTUSE_TC_FlexTime_TimeTile_TileLoad_" TC.getParam("Tag"),"Auto"); 
TC.endTransaction("TC_FlexTime_TimeTile_TileLoad","Auto");

resulting timings show something like this: *results for below a from a single run not aggregated with different test data

DONOTUSE_TC_FlexTime_TimeTile_TileLoad_MediumSimple: 00:09.331

TC_FlexTime_TimeTile_TileLoad: 00:09.541

Tags:

  • As per R&D confirmation, "Currently we do not support this scenario. Regarding how TC transaction works, the difference in the time is there because the inner transaction eval step is also counted into the transaction time." There is a RunTime settings that has a minimum of 300ms between steps.

    It was also pointed out that the call to TC.getParam in the TC.startTransaction may also be attributing overhead.

    With the above mentioned, it appears that implementing Transactions in anyway other than utilizing the Start and Stop Transactions on the steps would not produce accurate timings.

  • In our lab we see a difference of 50 to 200ms when we collect the transaction duration into a javascript array just before the transaction end (implemented via GUI start/stop and not via JS). The recorded transaction duration is longer than the reported transaction duration of the TC script.

    We expect that this is due to the execution of the JS section or not able to obtain waste time etc. and expect that TC transaction time is corrected for execution JS section or waste time.

    This tested on LR 12.63.