AEM Automation testing | Community
Skip to main content
AEM_Forum
Level 10
December 31, 2022
Solved

AEM Automation testing

  • December 31, 2022
  • 1 reply
  • 3022 views

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.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by lukasz-m

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:

1 reply

lukasz-m
Community Advisor
lukasz-mCommunity AdvisorAccepted solution
Community Advisor
December 31, 2022

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:

AEM_Forum
AEM_ForumAuthor
Level 10
December 31, 2022

Thanks Lucas.

 

How about Sling testing?

 

Thanks,

Rama.

 

AEM_Forum
AEM_ForumAuthor
Level 10
December 31, 2022

You mentioned Sling Mocks under Unit testing.

 

I guess it is the same.

 

Thanks,

Rama.