Quality Assurance

AEM- DAM load test with Jmeter

What is AEM-DAM?

AEM Digital Assets Management. This is the one of the most beautiful feature in Adobe Experience Manger.

Marketers and Publishers will save their digital assets in DAM to use in future. They will recoup their digital assets to their campaign, brand and content experiences.

 

How to perform DAM Load Test:

To do the DAM load test we can use Jmeter open source tool. This tool is capable of doing DAM load test?

Test strategy?

For this load test below test strategy would be the best fit.

  • Capture Assets Upload , Download and Search actions by using Jmeter
  • After Preparing the test script configure these tests by parameterizing the asset details and user credentials

Test Approach:

We used below test approach to do the DAM load testing

We started test with 100 users to 500 users and we divided user with various  actions (upload, download , search ) and we captured application response and performance during the load test.

Total No of Users Search Users Users Downloading Users Uploading Total Time Ramp up time
100 50 25 25 10 1 min
200 100 50 50 25 3 min
300 50 100 150 25 10 min
400 100 100 200 10 3 min
500 100 100 300 10 4 min

 

What are the problems we may face during the DAM performance testing?

 DAM performance testing is bit different than normal website performance testing. Because here we need to upload assets and check the processing time. As DAM is capable to store huge digital assets we need to check application performance by uploading the huge size assets, and down load huge assets. During this time, we generally face following major issues

  1. Heap memory
  2. Jmeter will not respond while running form GUI mode
  3. Download file size limit.
  4. Access tokens expiry

How to overcome performance testing problems ?

Solution for Heap memory:

  • Open “jmeter.bat” file (which is inside the Jmeter bin folder) in notepad
  • Search for “Heap”
  • Set the desired heap size (i.e. set HEAP=-Xms512m -Xmx20480m)
  • Save changes and run the Jmeter script.

 Solution for Jmeter not responding while running form GUI mode

This is very simple, if we are running Jmeter with multiple virtual users it will stop responding and to avoid that we need to run the Jmeter script in non-GUI mode. For that we need to use following command to run the Jmeter script from Non-GUI mode.

  • jmeter -n -t D:\TestScripts\script.jmx -l D:\TestScripts\scriptresults.jtl

  Solution for download file size limit

While doing, the performance test we need to download assets, as DAM is capable to upload huge size assets those assets only we should use for our download load test. but problem is by default Jmeter will allow user to download only 10MB file when we use the Save the Responses to a File option.  Because of this if file size is more than 10MB by default Jmeter will not download asset full size.

To avoid this, we have option to change Jmeter default configuration settings.

  • Add the next line to properties file (located in JMeter’s “bin” folder)
  • max_bytes_to_store_per_request=62914560

 

or while running the script from command prompt you can mention download limit

I.e.  jmeter -Jhttpsampler.max_bytes_to_store_per_request=5368709120 -n -t UATLOADTEST.jmx -l downloadtest1.jtl

  Solution for Access tokens expiry

This is also one of the problem while doing the performance testing with Jmeter. As part of the security guide lines websites are implemented token expiry time and for each transaction new token will generate on the fly. To handle this at Jmeter we need to capture the token from related service call and serve to next service call.

 

Test Reports:

After performing the load test we submitted following reports by using test results

  • Test Summary
  • Minimum, Average & Maximum response time captured from Summary by using test results file
  • Response codes distribution graph
  • Load in servers during the load test

 

About The Author

Leave a Reply

*