March 23, 2020
Estimated Post Reading Time ~

AEM- DAM Load test with Jmeter

What is AEM-DAM?AEM Digital Assets Management. This is one of the most beautiful features in Adobe Experience Manager. Marketers and Publishers will save their digital assets in the DAM to use in the 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, the strategy would be the best fit.
· Capture Assets Upload, Download and Search actions by using Jmeter
· After Preparing the test script to 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 the test with 100 users to 500 users and we divided users 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 uptime
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 a 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 download 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 the 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 avoid that we need to run the Jmeter script in non-GUI mode. For that, we need to use the 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 the problem is by default Jmeter will allow the user to download only 10MB files when we use the Save the Responses to a File option. Because of this if the file size is more than 10MB by default Jmeter will not download asset full size.  

 To avoid this, we have the option to change Jmeter default configuration settings.
· Add the next line to a properties file (located in JMeter’s “bin” folder)
· max_bytes_to_store_per_request=62914560

or while running the script from the 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 problems while doing performance testing with Jmeter. As part of the security guidelines 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 a related service call and serve to the next service call.










 

Test Reports:
After performing the load test we submitted the 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

Source: https://labs.tadigital.com/index.php/2017/10/13/aem-dam-load-test-with-jmeter/



By aem4beginner

No comments:

Post a Comment

If you have any doubts or questions, please let us know.