Conducting Quality Assurance: QA Checklist

Quality Assurance and User Acceptance Testing (QA/UAT) is the final and most important phase of the integration process. You should expect to spend the final week of your integration in a complete/ready state so you can test everything related to your program from beginning to end.

In this article, we'll go through an overview of the end-to-end testing strategy, including a detailed checklist and guidance on fixing any bugs you might encounter in the testing process.

 


Key Integration Components To Test

It is strongly recommended that you do not launch until all testing is complete and functionality-blocking bugs are resolved. It is also important to conduct your QA checks on all popular web browsers, operating systems, and devices. 

Identifying any potential issues before going live ensures a successful program - correcting issues that were not identified in QA/UAT after the fact can become a costly exercise and may directly impact your customers’ experience.

NOTE

While Ordergroove rigorously tests any custom development work your project may require, your business and service integration teams must test the key integration components listed here.


App Configuration

While you should have completed app configuration early in the integration process, it’s important to confirm that your Ordergroove application is configured correctly before checking all other steps. Depending on your platform, this can include verifying configurations in an installed Ordergroove application or cartridge and verifying settings within Ordergroove’s dashboard.

Critical items can include:

  Client hash keys are stored properly (these will be different if using staging/production environments).
  All URLs are configured properly (these will be different if using staging/production environments).
  SFTP access is configured, and the product feed is synced/scheduled for regular syncing.
  Products eligible for subscription have been configured as such in the product feed.
  The payment gateway is configured if necessary.
Ordergroove program settings are configured.
Products are merchandised for production via the Product Configuration CSV.


Front End Implementation

Ordergroove requires a specific code configuration on the front-end of your store to allow customers to subscribe to products, and in turn, to manage their subscriptions. You may elect to use Ordergroove-hosted subscription offers and Subscription Manager, or you may choose to host these elements yourself.

The key items to confirm are:

  Ordergroove front end offer code is in place (og-offer div, main.js, any other required settings) on all required pages (typically, PDP, Cart, Checkout flow).
  Ordergroove frontend Subscription Manager code is in place (msi div, msi.js, auth cookie generates)
  If client-hosted, necessary client-hosted code is in place for offers and/or MSI.
  If client-hosted, ensure public offer ID is in place to be sent within the purchase post (platform-specific).
  Ensure that correct staging/production URLs are being called in all instances.


Offer Configuration and Interaction

Now that you’ve ensured the proper code is in place to load the enrollment offers, test all functionality that they provide.

Test out the functionality of the offer on all pages

  Does the offer load properly for products that are eligible for a subscription?
  Can a user select to opt into and out of a subscription?
  Can a user select all available frequencies for the subscription?
  If a customer is unfamiliar with subscription programs, are you providing a tooltip or explanation of how things work?
  Does your tooltip content link to a live FAQ or Subscription landing page?
  When you are logged in and have an upcoming order, does Instant Upsell (IU) display? (If configured)
  Does IU appear if you are logged in and have an upcoming order? (If configured)
  Can you add IU items to an upcoming order? (If configured)
  Does the IU copy look correct? (If configured)
  Does the “View Upcoming Order” button link to the Subscription Manager? (If configured)

Simulate all the things a customer might do with an offer

  Change the subscription/one-time selection - is the subscription meta-information updating? (see OG STATE within local browser storage)
  Change the frequency, then change it again - is the frequency updating? (see OG STATE within local browser storage
  Change the quantity of the item being subscribed to - is the quantity updating?  (see OG STATE within local browser storage)
  Check the offer in different supported browsers - is the styling/experience correct?
  If you are providing an incentive on subscription orders, is it clearly stated? Is the incentive configured/working as expected when checking out? (platform-specific)
  Add a subscription IU and a one-time IU item to your upcoming order.  Does it appear in the upcoming order within Ordergroove and on your Subscription Manager? (If configured)


Subscription Manager Configuration and Interaction

Now that you’ve ensured the proper code is in place to make the Subscription Manager work, test all the Subscription Manager functionality.

Before creating a subscription, test the “No Subscription View”

  Does the copy look correct?
  Does the “Learn More” link work?

Test all functionality that customers can use to manage their subscription

  If billing is client-hosted, ensure it redirects back to the customer’s payment wallet or form to update payment.
  Change order date: did the order date update successfully?
  Change quantity: did the quantity update successfully?
  Change frequency: did the quantity update successfully?
  Cancel a subscription: Did this trigger cancel reasons and cancel correctly?
  Reactivate a subscription: Did the subscription reactivate and create the next order?
  Send Now: Does the customer service information look correct?
  Does update billing information work?
  Does update shipping information work?

Ensure all styling and customization is complete in Ordergroove

  Are all fonts and styling appearing correctly?
  Is all of the copy customized to your requirements?

Ensure product/order information is correct

  Are the product names and images populating correctly?
  If you click a product, does it link back to the correct product details page?
  Does the Instant Upsell banner in the Subscription Manager link back to a live page?


Email Configuration and Interaction

Email may be configured via Ordergroove or integration with an Ordergroove-integrated email service provider. While testing subscription creation and Subscription Manager actions should have already triggered several emails that correspond to the actions you took, it’s important to ensure all events/emails have been accounted for.

After testing subscription creation and Subscription Manager actions, did you receive:

  A ‘Subscription Started’ email?
  A ‘Canceled Subscription’ email?
  A ‘Reactivated Subscription’ email?
  A ‘Your Order Has Placed’ email?

Email look and feel:

  Do all links in emails work?
  Do images render?
  Is the formatting correct?
  Are fonts, colors, and positioning correct?
  Do dynamic fields render?
  Do you have the correct calls to action?
  Is the information correct?
  Is the copy correct?
  Is any back-end code displaying?
  Are all emails listed in Ordergroove styled?
  Are the spelling and grammar correct?

>>Further Reading on Email QA/UAT Protocols


Subscription Creation

The ability to create subscriptions is the cornerstone of the Ordergroove service. It is important to test and verify subscription creation in as many different scenarios/conditions as possible.

  Create a subscription order: Is the correct information being sent? Was a subscription created in the Ordergroove dashboard, and can you see it in the Subscription Manager?
  Create a non-subscription order: Is this still working as expected?
  Create an order with multiple subscription items: Is the correct information being sent? Were multiple subscriptions created in the Ordergroove dashboard, and can you see them in the Subscription Manager?
  Create a mixed basket of subscription and non-subscription items: Is the correct information being sent? Was the correct subscription created in the Ordergroove dashboard, and can you see it in the Subscription Manager?


Recurring Order Processing

Once a subscription is created in Ordergroove, it will place orders back to your store on the cadence specified. It is important to confirm that the orders are placing as expected and include the expected information.

Click "Send Now" in the Subscription Manager or Ordergroove to send a recurring order to your Order Placement endpoint at the next order placement hour.

  Was the Order Successful?
  Does the product information look correct?
  Does the discount & final price look correct?
  Is all required customer data to successfully charge a customer received?
  If possible, try to fail an order with bad data or by rejecting payment with your payment gateway.


Incentives Reflected Accurately

Your program may include a variety of incentives that are configured for recurring orders. If you choose to use Ordergroove incentives, they will be applied to recurring orders before placing them into your store. It is important to confirm that the incentive logic in place is working, whether a standard incentive that applies to all orders or more sophisticated incentives that should be tested individually.

Evaluate the recurring orders that Ordergroove has placed.

  Is the incentive represented correctly?
  If a percentage discount or dollar amount off, is it correct?
  For advanced promotions like Nth order discounts, are these applying as expected (you may need to trigger multiple orders for a customer to verify) - Requires custom development from Ordergroove

Evaluate the Subscription Manager

  For upcoming orders that should receive a discount, is the discount reflected accurately in the upcoming order view?

Evaluate the Offer, Email, and any other website content that explains the incentive

  Is the messaging unified?
  Will customers understand the value?


Testing and QA of Your Migration File

NOTE

If you're importing a program into Ordergroove make sure to read our article on how to test and QA your migration file before going live.


Detailed Technical QA/UAT Checklist

If you’ve completed all the user experience testing above, you may choose to go the extra mile and conduct a more granular technical QA.

Ordergroove provides a helpful Detailed QA/UAT Checklist for this purpose.


Communicating and Resolving Issues

You may encounter bugs or inconsistencies in QA/UAT - that’s what it’s for!

If you find something that doesn’t appear to be working as expected, the first step is to review the Knowledge Center content that relates to your issue. If you’re unable to identify the problem, Ordergroove is happy to assist.

Please provide a detailed description of the issue you are encountering - this should include steps to replicate, expected vs. actual behavior, and any other critical details that will help us identify and solve the issue quickly.

Important: some issues may take time to resolve. Please ensure you are raising issues to Ordergroove as soon as you encounter them. Critical issues identified just before launch may impact the launch date, depending on the impact and the work involved in solving them. 


Launch Day Checklist

As you prepare to launch, it is important to confirm that all of the items above have been thoroughly tested. You should now be code ready, and QA-complete in your staging environment and focusing on the move to production.

NOTE

Please review the Launch Day Checklist for steps in preparing for launch. If you haven’t already, please notify your Ordergroove representative that you have completed staging QA and you are ready to move to production.