Loadrunner Vugen - CSV File download taking too much time - High Response time

I test an API that successfully downloads a 40 MB CSV file in 14 seconds from browser. However, when I created a script using VUGEN (Web HTTP protocol), I noticed that it took more than 4 minutes to download same file. It downloads less number of records at a time and so taking more time to download all records. It shows content-type as text/csv which is also correct in response header but downloading process is very slow. 

I would appreciate any suggestions to solve this very slow download problem in vugen

I have given same proxy settings as browser,  keep-alive connection enabled. 

  • Verified Answer

    +1  

    Hi  

    Vugen is not that representative in respect to response times (also running scripts for many iterations will bring timing down). Run your script via LRP (Controller) or LRE or LRC.
    Large responses might be scanned by LR engine for patterns, some automatically, some by your request.
    So do not use:

    - any web_reg_save_* functions

    - "MODE=HTMP", but use "MODE=HTTP" in your web call (if applicable).

    - Disable all logging in the Run Time Settings.

    Let me know if these hints are sufficient.

    Regards, Erik

    P.S.
    I moved your request to LRP forum because it is about VuGen.
    Note that new users are moderated for spam controll, I released your request, but full access of your account is task of OT community team.

    How to ask questions

    Reward contributions via likes or 'verified answers'

  • Verified Answer

    +1  

    The issue description lacks many details, such as which LR API is being used for the download.

    Different LR APIs have different follow-up checks, parsing, and processing for HTTP responses, rather than just downloading.

    Is the step mode HTTP or HTML?

    In HTML mode, the response is parsed as text to check for sub-connections, whereas in HTTP mode, it is not.

    Does the script register web_reg_find or web_reg_save_xxx for retrieval?

    These checks would force LR to cache all responses and attempt various decodings and analyses, which would impact performance.

    Does Replay output a log?

    Outputting a 40MB response log would also consume performance.

    Is Replay in socket mode or WinInet mode?

    Does the request content sent by the browser match exactly with the one sent by LR?

    Has the network log, such as from Wireshark, been used to verify that both the browser and LR are sending to the same proxy address?