Search code examples
jmetervideo-streamingperformance-testinglarge-filesprogressive-download

Load testing of Progressing download(Video) or Larger files download


I am looking at load testing of Progressive download video files with 100 user load. The testing tool I am looking at is Jmeter, Load Runner and NeoLoad. Though the script required for creating the load is very simpler, it consist of couple of request and it is able to make the connection with server and start the downloading of the file. Though I understand that the progressive technology is pretty old, but still it is used in many website. The question I have is around the strategy.

  1. Do we need to download the complete file(i.e. 1.3 GB in my case)?
  2. Even we looked at saving the response as file, the resources such as Network and disk I/O are at max? Does this strategy suits here?
  3. Can we have some another strategy where we can engage the server for the duration and test for issues underlying with connection issues and transmission speed?

Solution

    1. Depending on your use case, there is Seeking feature so theoretically you should be able to specify start offset so you will not have to get the whole file. Also you can consider using HTTP Header Manager to send Range header
    2. If your target is to verify that the file has been downloaded fully and it is not broken you can tick "Save Response as MD5 Hash" box on "Advanced" tab of the HTTP Request sampler - this way you will save at least 130 GB of disk space. MD5 checksum can be verified using i.e. MD5Hex Assertion

      JMeter HTTP Request

    3. The main idea of the load testing is simulating real application usage with 100% accuracy. Not knowing the requirements of your product it is impossible to come up with suggestions, however JMeter can be configured to behave pretty much like real browser does so it is a viable option.

    See Load Testing Video Streaming with JMeter: Learn How article for more information if needed.