Adobe Testing Tutorial: Getting Started
This tutorial on Adobe testing highlights the importance of Adobe in software applications and how to leverage it to reveal hidden patterns and implement them.
Join the DZone community and get the full member experience.Join For Free
With the exponential growth in digitalization worldwide, organizations hold a large amount of data today. This data can be extracted, cleaned, and used to reveal analytics that was not possible earlier. One can use these numbers to expand web applications, analyze user patterns, and present exactly what they want to see to the user. This can only be unlocked by using an appropriate tool to capture this data and determine usage patterns.
Not only this, but if something is wrong, the tool should be able to identify it and provide solutions that can run the application in the optimum desired space. This hectic work starts after deploying the web application and is as crucial as development because it can take the business down very quickly.
One such tool that works in this field and is one of the best in this domain is Adobe Experience Manager. It helps applications and businesses attach themselves to a helpful analytical ecosystem that does multiple things assisting businesses to grow manifolds.
This tutorial on Adobe testing highlights the importance of Adobe in software applications and how to leverage it to reveal hidden patterns and implement them in your business.
What Is Adobe Experience Cloud?
When the developers and testers deploy their web applications to the users, the development work may end there for a while. How an end-user perceives a website, we may only know the answer to that if we see the results.
This is the place where Adobe Experience Cloud comes in. As its name suggests, the platform works on the customer experience side, providing them with customized and best experiences even if the application starts to scale.
Consider a scenario in which a team handles your analytics manually and analyzes the pattern at 5 PM each day. One day they found out that yesterday there was a sudden surge in traffic at 10 PM. This is not normal behavior; since it has been 19 hours, we are already too late to find this out. It would have propagated to other resources if it were an attack or a bug.
The next task is to fix this; it may take some time to find the cause of this fluctuation and fix it if it is not organic. Generally, time is valuable in such cases, and the only option would be to pull an all-nighter. No employee would want that.
Let’s say similar scenarios happen in an alternative case, but you don’t analyze them at 5 PM this time. Instead, you get a notification at 10 PM that the traffic has surged abnormally. In a couple of minutes, you also get the reason for this surge and the steps taken to bring it back to normal. All this happens automatically with no manual help. In both cases, which one would you want to adopt in the organization?
The second case we discussed is the primary motive of Adobe Experience Cloud. Such scenarios happen regularly; manually working on them will make everyone’s job challenging. Adobe Experience Cloud comes with a set of tools that help you in such situations in different areas making the customer experience better. This post will take up these areas to give a more detailed understanding.
Adobe Analytics Cloud
The first part of Adobe Experience Cloud is the Adobe Analytics Cloud and is the most popular part of the overall product. Analytics is all about numbers and percentages that tell us the direction in which we are moving and how we should proceed. It is the most sacred tool for data analysts and data scientists.
However, exploring this cloud directly can make things boring. So to understand Adobe Analytics more deeply, let’s check its features and the elements that make Adobe Analytics a must-have in your web application.
Whatever we see in the adobe analytics screen is called the view. So, for example, this is an eCommerce web application screen with a few analytical parameters already set.
This view shows “All visitors” and “iOS visitors” for our application. On the right side, the retention rate is seen. Let’s say I wish to add one more parameter to this already existing view to help me analyze Android visitors without resetting anything else.
All I need to do here is to pick “Android Devices” from “Segments” located in the left panel and add it beside iOS by dragging. As a result, within a second, I am ready to compare my iOS and Android visitors on the application:
With this one step, we can add more elements to our view, and as a data analyst, this flexibility saves a lot of time.
Another handy feature for analysis in Adobe Analytics is that it shows the paths a user has taken, giving us a micro-level view of how users behave and what else we might need to do to increase engagement.
You can further deepen this analysis by adjusting the dimensions that may take you as fine as page-level views.
It’s like you can see a user navigating through your website, directly comparing with other users using percentages. This means you get aggregated data of how many people went this way, how many people were distracted at the second step, etc. This is an excellent micro-level analysis tool that can help your business grow.
To analyze the metric parameters, numbers, and change percentages across various segments, Adobe Analytics Cloud provides with metric traffic page as follows:
This can also be refined according to the need. For instance, to modify the attribution model, click on the option:
Select the Column Attribution Model on which you want to refine the parameters.
Select Apply, and the tables will modify accordingly.
Furthermore, you can break this data down into more sub-parameters such as based on countries as follows:
As a marketer and data analysts, having this information available in a couple of clicks is just what they need to work efficiently.
Adobe Analytics Cloud provides a feature of anomaly detection that helps identify issues (if it is one) within a couple of minutes. In the example mentioned in the above section of this Adobe testing tutorial, we discussed how a sudden surge in traffic spikes could take a couple of days to diagnose. The same issue can be demonstrated here to show how anomaly detection works in Adobe Experience Cloud.
First, analyze the graph, and if there are any sudden spikes, hover over them.
If something looks suspicious, click on the Analyze option at the box’s end. This will take a couple of minutes as Adobe digs all the patterns to determine whether it is organic or a bot doing random repetitive clicks.
Thankfully, in our demo, it is organic, and the traffic came from Email Ads.
You can also click Email Ad and explore various options such as country, when you clicked Ad, etc., at a deeper level.
Ease of Saving
Whatever parameters we select in our views to see the analytics are termed “Dimensions” in Adobe Analytics Cloud. The platform allows us to save the project in the system with all the work we have done on the data. This way, you don’t need to repeat everything or run any programming languages (or snippets) to get to a point and reassess the data.
Finally, Adobe Analytics Cloud allows you to share your project with other team members with a couple of clicks from within the platform.
With this sharing method, you will get all the selected dimensions and parameters as it is on the dashboard. The team can then analyze and modify according to their requirements.
These features give us an insight into Adobe Analytics Cloud, which is part of Adobe Experience Cloud and is a very demanding and necessary feature in the business.
Adobe Marketing Cloud
Adobe Marketing Cloud is built for a marketer to analyze and deliver customized and specific experiences to the customer. These experiences are curated by analyzing various parameters focusing on the user’s reactions and other elements and drafting a personalized profile accordingly. This profile is used for multiple activities, such as communicating with them.
As a marketer, the main goal of using the Adobe Marketing Cloud is to increase engagement and conversion rates from the customer. This is achieved by the combined efforts of various sections that make up Adobe Marketing Cloud. These are listed below with their primary tasks.
Adobe Social is the element that works towards the social media part of the posts related to the integrated web application. It provides a centralized platform from where all the social media posts, such as LinkedIn, Twitter, and Facebook, can be taken care of.
Adobe Social also lets you know the best time to post on a particular social media channel so that the engagement and conversion rates are maximum. Along with this, its algorithm calculates the potential engagement on each post divided on the social media channels. It gives marketers a rough idea about the post and whether they should make any changes to it or not.
Lastly, Adobe Social will help you analyze conversations across various social media platforms on your different posts in a single place. As a result, the marketer doesn’t need to switch multiple websites and can even get the report of conversions happening on the posts by the customers on various channels.
Adobe Target helps specialize the customer experience by experimenting with various modified copies of a web page and analyzing the user’s engagement on all of them. It allows a marketer to increase the conversion rate as a user is shown the same page on which he engaged the most. This is also called A/B testing.
Adobe Media Optimizer
Adobe Media Optimizer helps optimize the advertisement spans across various portfolios. An advertisement targets various platforms such as devices, search engines, or paid searches. How much an advertisement should run and analyzing the conversion rate is the goal of Adobe Media Optimizer. This will vary across the above-said platforms and help set revenue goals for each.
Adobe Experience Manager
Adobe Experience Manager is a content management system that helps access and assemble content from various platforms. This content is personalized according to the user and is fetched from various repositories within 300 milliseconds.
The main aim of Adobe Experience Manager is to personalize things according to the customer’s device. For instance, if you have an eCommerce website linked to Adobe Experience Manager, the product images should expand according to the device screen for a better experience. This can be achieved by this tool. Being a CMS, it also helps save assets to be used across Adobe products through a central medium.
Adobe Campaign handles the communication-related channels for the customer and the marketer. Since different consumers like to communicate differently, Adobe Campaign can deliver personalized experiences according to their choices so that conversion rates can be increased. For instance, if someone likes offline communication, personalized emails, or through social media, all can be handled and delivered through Adobe Campaign.
Another leg of Adobe Marketing Cloud is integrating with Adobe Analytics to get the numbers for various parameters such as geographical locations, devices, or operating systems. This is explained in brief in the previous section.
Adobe Marketing Cloud is a great tool for marketers as it gives you deep insights that are hard to gather manually. This includes analytics as well as engagement patterns from the user.
Adobe Advertising Cloud
Adobe Advertising Cloud is a rich one-stop solution for people trying to run their advertisements on various platforms. It gives you micro insights and lets you choose deeper levels of customization that increase efficiency, conversion rate, and, ultimately, revenue. A small demonstration initially done to run advertisements for Samsung’s S9 phone can show a high-level view of the same.
First, we need to add the target for which these advertisements will be run.
It will give a list of options that can act as the Target:
For now, we will choose the option Audiences. Next, we select the analytics that will help us measure the success of advertisements and micro-tune them. For this, we will choose S9 Visitors, and for demographics, we will select ages 18-45.
This will create a decision tree as follows:
Here, the previous target of In-Market: Television and EVERYONE ELSE are excluded as they are kept generic.
Next, we customize each of the analytics using “Add customization.” Here, we will get the list of uploaded assets that need to be created by a graphic designing team. We can drag and drop in this panel to add it to our target.
This will create the Ads for different sizes automatically:
Similarly, we can expand our decision tree to divide one target into multiple sections focusing on small units.
One of the best features of Adobe Advertising Cloud is to minimize the dependency on graphic designers and change the advertisement posters according to our needs from within the platform.
For this, just edit the creatives and then edit the attributes:
For example, in the image above, we will change the heading attribute and notice below the change in advertisements:
And there you go! With just a couple of clicks and without needing a graphic designer, we can customize these assets on the go. Similarly, other attributes, such as background images, can also be changed from Adobe Advertising Cloud.
Getting Started With Adobe Testing
Alright! We have analyzed Adobe applications in-depth and how they are used in businesses to achieve conversion and revenue goals. But even if it is so intelligent and complex, it too can go wrong. Sometimes due to their fault, a developer or a marketer may need to understand the concept. Due to this, it is always recommended to perform testing on your Adobe applications or applications that have integrated Adobe applications into them.
The Adobe testing of applications is segregated into four main sections:
- Tests run by Adobe.
- Tests run to check specific functionality.
- Tests run to check generic functionality.
- Tests run on Adobe cloud.
- Tests run on the local machine.
- Tests run to check cross-browser issues on the LambdaTest cloud.
All these can be discussed briefly to get an overview.
Tests Run By Adobe – Product Functional Testing
The first set of tests your application goes through is product functional testing, or the test cases run by Adobe to check the application’s core functionality. These test cases are generic and are maintained by the open-source community on GitHub. You can check it from GitHub’s official page.
These tests do not require manual intervention and are run automatically whenever code is deployed. These tests cannot be skipped due to their high priority.
Tests for Specific Functionality
Now that Adobe has done its part in testing the application, a tester needs to run the tests that they believe are specific to the application’s functionality. This is done in two parts. First is testing the core functionalities, which means whether one functionality works. In this scenario, we do not care about browser-specific or cross-browser issues.
Second, when we have fixed generic functionalities, we test the application on various browsers to verify the cross-browser compatibility issues. Let’s see them individually, along with their sub-methods.
Tests for Generic Functionality – Custom Functionality Testing
Adobe Experience Manager allows testers to upload customized test cases written just to test particular functionality specific to the web application. These are called “Custom Functionality Testing” in Adobe. They can be executed during deployments, and code pushes and works both ways. This means that these tests help verify the code breaks when compared to Adobe Experience Manager code changes and vice-versa.
These tests are run by two methods:
- Using Adobe’s Cloud Infrastructure
- Using Local System
Running Tests on Adobe’s Cloud Infrastructure
To run the tests on Adobe’s cloud infrastructure, the tests should be written in Java programming language, and the file should be located inside
it.tests folder of the project. The file should produce only one JAR output as a result. Since Adobe executes and looks for only one JAR, it can pick up any one (and only one) from all when multiple are produced. Also, one JAR is not “at least” but the only requirement that should be satisfied. So, if there are no JAR files, tests will be skipped.
The custom functionality testing done through the JAR file needs to be generated using the maven dependency by the maven-assembly-plugin. This is done using the jar-with-dependency descriptor. Also, you need to implement a new header called
Cloud-Manager-TestType under manifest and set it to integration-test as follows:
<manifestEntries> <Cloud-Manager-TestType>integration-test</Cloud-Manager-TestType> </manifestEntries>
This setup is all you need for running test cases with Adobe Experience Manager on the Adobe Cloud.
Running tests on the Local System
The tests can also be run on the local system using any IDE that supports JUnit and Java. The execution can be done simply as how we would do it for any JUnit test case. However, with just a simple modification, a few system properties are required to be set and are expected by aem-testing-clients. These properties are as follows:
- sling.it.instances – Should be set to 2.
- sling.it.instance.url.1 – Should be set to the author URL, for example, http://localhost:4502.
- sling.it.instance.runmode.1 – Should be set to the author.
- sling.it.instance.adminUser.1 – Should be set to the author admin user, for example, admin.
- sling.it.instance.adminPassword.1 – Should be set to the author admin password.
- sling.it.instance.url.2 – Should be set to the publish URL, for example, http://localhost:4503.
- sling.it.instance.runmode.2 – Should be set to publish.
- sling.it.instance.adminUser.2 – For example, admin should be set to the publish admin user.
- sling.it.instance.adminPassword.2 – Should be set to the publish admin password.
While a lot of organizations are focusing on providing cloud servers, machines, and other technologies, Adobe took a different path and worked on delivering a cloud service but only for customer experience. For this, they developed Adobe Experience Manager, which combines a suite of applications working in various segments but towards a common goal to enhance customer experience, increase conversions and maximize the revenue that comes from online channels.
To build such a platform, Adobe takes help from three major technologies – Adobe Advertising Cloud, Adobe Marketing Cloud, and Adobe Analytics Cloud. All three were discussed in this Adobe testing guide, along with their sub-sections.
Once we have introduced ourselves to these major technologies, the next step is to test them so that whatever we see and expect should align with whatever our users will experience. This can be accomplished by combining two platforms – One Adobe Cloud and another LambdaTest.
I hope this Adobe testing tutorial will help you create ads, analyze numbers, and optimize social conversions.
Published at DZone with permission of Harish Rajora. See the original article here.
Opinions expressed by DZone contributors are their own.
Tactics and Strategies on Software Development: How To Reach Successful Software [Video]
A Comprehensive Guide To Testing and Debugging AWS Lambda Functions
How to Use an Anti-Corruption Layer Pattern for Improved Microservices Communication
A Complete Guide to Agile Software Development