Test a Workflow

MESA's Test feature is a handy way to test a workflow and see how it runs. This feature lets you test using recent data, example data, or custom data. A payload refers to the data that is used to trigger the workflow.

This article will go over three different ways you can test your workflows. It will also go over some additional insights on testing.

Run a test

To test a workflow, you can click the Test button at the top of the workflow.

A Testing menu will appear on the right-hand side with plenty of features to play with.

🗒 Note: When using the Testing menu's Filter field and testing a workflow that starts with a Shopify trigger, only 250 results will display. A "No matches found" message will display if no results can be found.


Test a workflow with recent data

You can see your store's recent data for your workflow if they are available under the search bar.

After choosing a recent data selection, MESA will display all the information that relates to the data. 

You can click on the Start Test button in the bottom-right corner if you do not wish to modify the data that MESA processes. 

MESA will run the workflow as if the workflow was enabled. Therefore, make sure you are comfortable with the output of the test. 

Not comfortable enough to run a test? Click here to learn how to halt any workflows.


Test a workflow with example data

By selecting Example data, MESA will use pre-defined data that you can use to test your workflow. 

The example data is standard for each MESA trigger and does not contain your store's live data. Therefore, running a test may result in an error depending on the steps in the workflow.

Example data is useful when the workflow does not rely on obtaining data from your store. For instance, if you were trying to send a Slack message every time a product was created then the example data would work well.

You can click on the Start Test button in the bottom-right corner if you do not wish to modify the data that MESA processes.

MESA will run the workflow as if the workflow was enabled. Therefore, make sure you are comfortable with the output of the test.

Not comfortable enough to run a test? Click here to learn how to halt any workflows.


Test a Shopify workflow with a test order

If your store is still in development, you may run into scenarios where MESA may not have access to the data needed to run a test. As an example, this prompt displays when you want to test a workflow that gets triggered when a new Shopify order is created but your store does not have any orders.

You can place a test order through Shopify's Bogus Gateway as a way to simulate a real live order transaction and as a way to test your MESA workflow. Learn more

⚠️ Important: If you decide to test a payment gateway with a real transaction, please refer to the terms of service for your payment provider. If you use Shopify Payments, then refer to the Shopify Payments Terms of Service for your region.


Test a workflow with custom data

By selecting Advanced options, MESA will let you paste your own custom data to run a test. Access to data and familiarity with your trigger's data structure is preferred when using this method.


View the test's status

After you click on the Start Test button, MESA will show you your test's status. If you see the Running status, this means that MESA is still processing the test.

You will see a Test successful banner appear once the workflow ran as expected. 

If one of the steps in the workflow has a red background, that means MESA ran into an error. 

The above screenshot shows a test ran on the Send a Slack message when a Shopify order is paid template. This error occurs when you have not created or selected a Slack credential

🗒 Note: See an error occur in your test run? View this article for more information on how to troubleshoot the error.


Troubleshooting errors

While testing, you may encounter errors as mentioned in the previous section. Do not fear! The error message is useful with diagnosing what is not working properly.

In this section, we will explore common errors for each app and how to approach resolving them. If you find that you are still unable to resolve the error, please reach out to MESA Support.

Airtable

Invalid_Multiple_Choice_Options

Airtable is expecting a specific option to be added for that column.

To resolve this error, check that the variable that you are using in your Airtable step of your MESA workflow matches what is expected in your Airtable Base.

Email by MESA

To email address is invalid

The email address is blank or incorrect.

If your workflow starts when a Shopify order is created, check that the customer filled in their email address with their order. You can check in the Orders page of your Shopify admin.

To resolve this error, do one of the following:

  • Disable allowing your customers to checkout with a phone number following this Shopify guide.
  • Add a Filter step before sending the email in your MESA workflow to check to see if a phone number is used.

Odoo

Bad Response from Odoo request

Fields in the setup of your workflow may not be compatible with your Odoo version.

To resolve this error, please reach out to MESA Support so we can help with troubleshooting.

Shopify

This order does not exist

Some common reasons this error appears:

  • This order is more than 60 days old. 
  • The order was placed in a different currency to your store's currency. 
  • The order was imported via an external app.

If any of the above reasons match your order, MESA is unable to edit the order.

400 Bad Request

The request was not understood by the server, generally due to bad syntax or because the  Content-Type header was not correctly set to application/json. This status is also returned when the request provides an invalid code parameter during the OAuth token exchange process.

401 Unauthorized

The necessary authentication credentials are not present in the request or are incorrect.

To resolve this error, double-check your credential and replay the workflow run.

402 Payment Required

The requested shop is currently frozen. 

To resolve this error, the shop owner needs to log in to the shop's admin and pay the outstanding balance to unfreeze the shop.

403 Forbidden

The server is refusing to respond to the request. This is generally because you have not requested the appropriate scope for this action.

To resolve this error, double-check your credential and replay the workflow run.

404 Not Found

The requested resource was not found but could be available again in the future.

To resolve this error, verify that the ID you are passing is correct and exists.

406 Not Acceptable

The requested resource is only capable of generating content not acceptable according to the Accept headers sent in the request.

422 Un-processable Entity

The request body was well-formed but contains semantic errors. A  422 error code can be returned from a variety of scenarios including, but not limited to:

  • Incorrectly formatted input
  • Checking out products that are out of stock
  • Canceling an order that has fulfillments
  • Creating an order with tax lines on both line items and the order
  • Creating a customer without an email or name
  • Creating a product without a title

The response body provides details in the  errors or error parameters.

To resolve this error, check that your configuration is correct and replay the automation.

423 Locked

The requested shop is currently locked. Shops are locked if they repeatedly exceed their API request limit, or if there is an issue with the account, such as a detected compromise or fraud risk. 

To resolve this error, contact Shopify Support if your shop is locked.

429 Too Many Requests

The request was not accepted because the application has exceeded the rate limit. Learn more about Shopify’s API rate limits.

To resolve this error, try using a Shopify Custom App MESA credential or replay the automation when there is less activity on your store.

500 Internal Server Error

An internal error occurred in Shopify. Please post in the Shopify APIs and SDKs forum so that Shopify staff can investigate.

To resolve this error, please replay your automation or contact Shopify Support for their team to investigate.

501 Not Implemented

The requested endpoint is not available on that particular shop, e.g. requesting access to a Shopify Plus–only API on a non-Plus shop. This response may also indicate that this endpoint is reserved for future use.

To resolve this error, use a Shopify Custom App MESA credential that has access to Plus-only APIs.

503 Service Unavailable

The server is currently unavailable. Check the Shopify status page for reported service outages.

To resolve this error, replay the workflow run.

504 Gateway Timeout

The request could not complete in time. Shopify waits up to 10 seconds for a response. Try breaking it down in multiple smaller requests.

To resolve this error, try restructuring your MESA workflow to break it down into smaller parts. Reach out to MESA Support if you have any questions.


Edit the data's information

If you wanted to modify the data, you can hover over one of the data labels until you see a ( + icon or pencil icon) and the red X icon.

  • Red x Icon: To delete the specific data
  • Pencil icon: Edit the value next to the specific data
  • + Icon: Advanced usage to add keys (names) and values to objects


Don't want MESA to run a test all the way through to the last step?

The Approvals by MESA app can pause any workflow and require manual approval in order to proceed to the next step in your workflow. You can add an Approval step to any workflow to verify that everything is working or verify the data that is being used.

Once the Approval step has been added to a workflow, you can easily monitor it through the Approvals tab.

For example, an Approval step has been added into MESA's existing Send a Slack message when a Shopify order is paid template. Learn more about the Approval's settings.

After starting a test, you can go to the Approvals tab and view the pending approval within your workflow. 

You can click on the Reject button to stop the workflow or click on the Accept button to let the workflow proceed to the next step. Alternatively, you can click on View Details to view the details of the approval.