Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

AEM Automation testing

Avatar

Level 10

Hi all,

 

Kindly suggest all tools/means of AEM Automation testing.

I understand some like JUNIT, Sling testing, etc.

 

When to use which tool and whether they are licensed.

 

Appreciate all your responses.

 

Thanks,

Rama.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hi @AEM_Forum,

There are multiple tools you can use to test your AEM application - and I think there is no one good answer for your question. Which tools will you use, will strongly depend on the nature of the application you are build, e.g. you will need different set for application that will expose data headless way, or just doing brochure-ware site, and other aspects.

Anyway, I would consider below areas in terms of automated testing:

  • Unit code testing, you can use one of free tool/frameworks like JUnit, Sling Mocks, AEM Mocks
  • UI testing, there is a dedicated free AEM framework called Hobbes.js
  • Functional testing, there are multiple frameworks/tools, most of them use Selenium underneath: Cypress, Robot - both are free
  • Visual testing: Percy/BrowserStack - it requires paid license, AETs - it's free
  • Performance: JMeter, Lighthouse - this one will also cover aspects like SEO and accessibility - both are free

These are only examples, of most popular tools (or at least the one I am using in my projects). Of course it does not matter you need all of them. As it has been written in first paragraph - just choose the ones that best match the nature of your app. Nevertheless remember that having lot of tools sometimes is a disadvantage and can slow down your development, and increase frustration than bring real benefits. Any automated tests needs to be maintained - so in my opinion proper test plan/strategy should be main driver for what aspects will be covered by automated tests, and which one will be tested manually. 

Additionally, you may also explore below pages:

View solution in original post

3 Replies

Avatar

Correct answer by
Community Advisor

Hi @AEM_Forum,

There are multiple tools you can use to test your AEM application - and I think there is no one good answer for your question. Which tools will you use, will strongly depend on the nature of the application you are build, e.g. you will need different set for application that will expose data headless way, or just doing brochure-ware site, and other aspects.

Anyway, I would consider below areas in terms of automated testing:

  • Unit code testing, you can use one of free tool/frameworks like JUnit, Sling Mocks, AEM Mocks
  • UI testing, there is a dedicated free AEM framework called Hobbes.js
  • Functional testing, there are multiple frameworks/tools, most of them use Selenium underneath: Cypress, Robot - both are free
  • Visual testing: Percy/BrowserStack - it requires paid license, AETs - it's free
  • Performance: JMeter, Lighthouse - this one will also cover aspects like SEO and accessibility - both are free

These are only examples, of most popular tools (or at least the one I am using in my projects). Of course it does not matter you need all of them. As it has been written in first paragraph - just choose the ones that best match the nature of your app. Nevertheless remember that having lot of tools sometimes is a disadvantage and can slow down your development, and increase frustration than bring real benefits. Any automated tests needs to be maintained - so in my opinion proper test plan/strategy should be main driver for what aspects will be covered by automated tests, and which one will be tested manually. 

Additionally, you may also explore below pages:

Avatar

Level 10

Thanks Lucas.

 

How about Sling testing?

 

Thanks,

Rama.

 

Avatar

Level 10

You mentioned Sling Mocks under Unit testing.

 

I guess it is the same.

 

Thanks,

Rama.