Stoobly Docs
  • Introduction
  • Use Cases
    • Generate Mock APIs
      • Empower Development
      • Scale API Testing
    • Enable E2E Testing
  • FAQ
    • Recording
    • Mocking
    • Terminology
  • Getting Started
    • Installing the Agent
      • Installation with pipx
      • Installation with Docker
  • Core Concepts
    • Agent
      • Intercept Modes
        • Mocking
        • Recording
      • Lifecycle Hooks
      • Proxy Settings
        • Data Rules
        • Firewall Rules
        • Rewrite Rules
        • Match Rules
    • Context
    • Mock API
      • Request
        • Response
        • Replay History
      • Scenarios
      • Snapshots
      • Fixtures
      • Public Folder
    • Scaffold
      • Service
      • Validation
      • Workflow
  • Guides
    • How to Run the Agent
      • Run with CLI
      • Run with Docker
    • How to Configure the Agent
      • Forward Proxy
        • Enable HTTPS Traffic
      • Reverse Proxy
    • How to Record Requests
      • Recording from the UI
      • Recording from the CLI
      • How to Create Contexts
      • How to Create Scenarios
        • Creating from the UI
        • Creating from the CLI
      • How to Create Requests
      • How to Customize Recordings
        • Customizing with Lifecycle Hooks
    • How to Update Requests
      • Editing from the UI
      • Editing with Snapshots
      • How to Update Scenarios
        • Updating from the UI
        • Updating from the CLI
      • Updating with Replay
        • Replaying from the UI
        • Replaying from the CLI
        • How to Customize Replays
          • Customizing with Lifecycle Hooks
      • Updating with Open API
    • How to Mock APIs
      • How to Enable Mocking
        • Enabling from the UI
        • Enabling from the CLI
      • How to Snapshot Requests
        • Deleting Snapshots
        • Sharing Snapshots
      • How to Use Fixtures
      • How to Customize Mocking
        • Customizing with Lifecycle Hooks
        • Customizing with Request Headers
      • Troubleshooting
    • How to Replay Requests
      • Replay with the UI
      • Replay with the CLI
    • How to Integrate E2E Testing
      • How to Scaffold an App
        • Scaffolding a Service
        • Customizing a Workflow
          • Customizing Container Services
          • Customizing Lifecycle Hooks
          • Customizing Init Scripts
          • Customizing Configure Scripts
          • Customizing Makefile
        • Troubleshooting
      • How to Run a Workflow
        • Running with CLI command
        • Running with Make
        • Troubleshooting
          • Validating
      • How to Stop a Workflow
        • Stopping with CLI command
        • Stopping with Make
      • How to Update a Scaffold
        • Deleting a Service
      • FAQ
  • Developer Guide
    • Installation from Source
    • Submitting Change Requests
    • Releases
  • Experimental
    • Experimental Features
      • Aliases
      • Endpoints
      • API Testing
        • Getting Started
        • Configuration
          • Assign
          • Lifecycle Hooks
          • Trace
      • Optional Components
Powered by GitBook
On this page
  • After Running a Workflow
  • After Unexpected 5xx Error
  • After 499 Status Code (Mock Not Found)
  • After Incorrect Response Returned

Was this helpful?

  1. Guides
  2. How to Integrate E2E Testing
  3. How to Run a Workflow

Troubleshooting

PreviousRunning with MakeNextValidating

Last updated 16 days ago

Was this helpful?

  • <SERVICE-NAME> can be found in make -f .stoobly/docker/Makefile <WORKFLOW-NAME>/services

  • <WORKFLOW-NAME> by default can either be record, mock, or test

After Running a Workflow

1

Ensure two workflows are not running at the same time

  • Bring one workflow down before running another

    • e.g. make -f .stoobly/docker/Makefile <WORKFLOW-NAME>/down

2

Double check expected containers are running

  • Ensure the proxy container for each service is running

    • e.g. docker ps | grep <WORKFLOW-NAME>-<SERVICE-NAME>.proxy-1

    • To learn about which containers should be running, see

  • If the workflow is either record , mock , or test ensure the gateway service is running

    • e.g. docker ps | grep <WORKFLOW-NAME>-gateway.service-1

3

Gather logs to search for errors

  • To view init and configure logs run:

    • make -f .stoobly/docker/Makefile <WORKFLOW-NAME>/logs options="--container init --container configure"

  • To view service logs run:

    • make -f .stoobly/docker/Makefile <WORKFLOW-NAME>/logs

4

Gather logs to trace request

  • Ensure that a request gets routed to the correct service container

    • To learn more about request service flow, see

  • To view service logs run:

    • make -f .stoobly/docker/Makefile <WORKFLOW-NAME>/logs

  • To view gateway logs run:

    • make -f .stoobly/docker/Makefile <WORKFLOW-NAME>/logs options="--container service --service gateway"

5

Use validate workflow command

  • To learn more about the command, see

After Unexpected 5xx Error

1

Double check system configuration

  • /etc/hosts contains the correct hostname(s)

2

Ensure CA certs are installed

  • Run either of the following:

    • make -f .stoobly/docker/Makefile ca-cert install

    • stoobly-agent ca-cert install

    • For manual installation, see

After 499 Status Code (Mock Not Found)

1

Double check if the correct scenario is used

  • Double check if request exists in the scenario

  • By default the UI is configured to run on

2

Double check rewrite rules

  • See .stoobly/docker/<SERVICE-NAME>/<WORKFLOW-NAME>/bin/configure

  • To learn more about rewrite rules, see

3

Double check lifecycle hooks

  • See .stoobly/docker/<SERVICE-NAME>/<WORKFLOW-NAME>/lifecycle_hooks.py

  • To learn more about lifecycle hooks, see

4

Double check match rules

  • See .stoobly/docker/<SERVICE-NAME>/<WORKFLOW-NAME>/bin/configure

  • To learn more about match rules, see

5

Gather logs to confirm correct application of rules (if any)

  • Search in the service logs to see if any rewrite rules are applied

  • To view service logs run:

    • make -f .stoobly/docker/Makefile <WORKFLOW-NAME>/logs

After Incorrect Response Returned

1

Double check if the correct scenario is used

  • Double check if request exists in the scenario

  • By default the UI is configured to run on

2

Create an Endpoint to enable component specific matching

  • To learn more, see

here
here
here
https://docs.mitmproxy.org/stable/concepts-certificates/
http://localhost:4200
here
here
here
http://localhost:4200
here