Troubleshooting Content Testing with Bandito in PageBuilder Editor
Experiencing issues with content testing with Bandito in PageBuilder Editor? This guide includes some of the most common content testing issues and potential solutions to help you make the most out of this functionality.
Before diving into different scenarios, remember that there are a couple of pre-requisites that need to be met in order to successfully execute content tests in PageBuilder Editor. This following criteria must be met:
- Your organization is provisioned for Bandito.
- You’re creating the content test on Pages and not on Templates
- The page has already been published before you created content testing variants. Important: Content Testing only works on published pages. Tests created on versions of a page that are not published will not start.
- You’re only creating content tests on blocks and chained blocks.
Note
Content testing is not supported on feed-based blocks, linkable blocks, chains, chained blocks on parent pages and on linked blocks, chains, and chained blocks on child pages.
Now, let’s dive into some common scenarios and steps for troubleshooting.
If you've published your page, but only the default is displaying and not the configured variants
- Remember: In order to create tests/variants, the page must first be published. Check to see if the page was published first, before you created your content tests and published them.
- Is the feature/block supported by Bandito? First, see if the feature has configured for Bandito. If yes, then remember that the following blocks/features are not compatible with content testing:
Feed-based blocks
Chains
Linkable blocks, chains, chained blocks on parent pages
Linkable blocks, chains, chained blocks on child pages
- If you did go through the standard workflow and the block is compatible with content testing, then it may be an issue with how the feature component was factored. With the help of your feature developers, ask them to check the following:
Is the feature a dynamic component? Bandito renders variants on the client-side, so static components do not support content testing because they will not re-render in the reader’s browser.
Is it a functional component? While this isn’t a hard requirement, functional components are recommended to minimize the use of state and lifecycle hooks and improve both readability and testability of your components. While it is possible to implement content testing on class components by overriding componentDidupdate lifecycle hook, it can lead with the feature component and how it was factored.
The feature has the registerSuccessEvent hook enabled. This is especially important to ensure that you’re collecting the data, but also something to check.
Note
It’s also important to consider the combination of these since it may impact your content testing as well. So for example, if the registerSuccessEvent has been implemented on a static component then that feature may not work.
For more information about content testing and its implementation, see Bandito and Content Testing Developer Documentation.
If the test is in progress and the variants are displaying, but has yet to declare a winner
Content testing needs a sufficient number of clicks before it can identify a winner. Some factors that may be impacting your tests not getting a sufficient number of clicks includes:
- The page may not be getting enough traffic
- There are too many variants you’re trying to test at once.
While there are no limits to the number of variants you can test, having a high number of tests and being able to get sufficient data heavily depends on traffic.
- You have multiple content tests happening at once.
Although there is no limit to the number of tests that can be running at one time, we do not recommend running two simultaneous tests on a single piece of content (for example, one test with headline variants and a second test with image variants). This result in the two tests overriding reach other.
For more information about content testing and recommendations, see PageBuilder Editor: Content Testing with Bandito Guide.
If the test is in progress and the variants are displaying, but no data is available in PageBuilder Editor
- Check to see if you went through the correct workflow when creating and publishing your tests. Was the page published first, before you created your content tests and published them?
- If you did go through the workflow correctly, then it may be an issue with the block/ feature you’re using. Remember: The following blocks are not compatible with content testing:
Feed-based blocks
Chains
Linkable blocks, chains, chained blocks on parent pages
Linkable blocks, chains, chained blocks on child pages
- If it isn’t an issue with workflows or with the blocks, then it could be an issue with how the block/feature was configured. With the help of your Feature developers, ask them to check the following:
Is it a functional component? While this isn’t a hard requirement, functional components are recommended to minimize the use of state and lifecycle hooks and improve both readability and testability of your components. While it is possible to implement content testing on class components by overriding componentDidupdate lifecycle hook, it can lead with the feature component and how it was factored.
The feature has the registerSuccessEvent hook enabled. This is especially important to ensure that you’re collecting the data, but also something to check. For more details, check this documentation on RegisterSuccessEvent() Method.
Note
It’s also important to consider the combination of these since it may impact your content testing as well. So, for example, if the registerSuccessEvent hook has been implemented on a static component, then that feature may not work.
This document is not comprehensive in terms of all issues and solutions, but it will be regularly updated as we gather more client feedback. Should your issue still persist after walking through these steps, go through the standard support process and we will work with you on finding a fix.
For more information about Bandito and content testing, see the following documentation: