> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bango.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Testing overview

> Test DVM use cases across API integrations and subscription flows in Sandbox before progressing toward production.

Use DVM Sandbox to validate your use cases across API integration and subscription flows before you form a live partnership in production.

Testing starts with DVM test Partners so you can prove your integration independently. You can then test the complete Reseller-to-Content Provider flow in Sandbox before progressing toward launch.

## How DVM testing works

DVM testing progresses through two stages.

<CardGroup cols={2}>
  <Card title="Two-party testing" icon="flask">
    Test your integration with DVM using a DVM test Partner in place of the eventual Reseller or Content Provider.
  </Card>

  <Card title="Three-party testing" icon="people-arrows-left-right">
    Connect the intended Reseller and Content Provider through DVM Sandbox and test the complete partnership flow.
  </Card>
</CardGroup>

## Two-party testing

Two-party testing lets you validate your own DVM integration before the other Partner needs to participate.

DVM Sandbox includes DVM test Partners that act as the other side of the subscription flow:

| Your integration | DVM test Partner | Role in the test |
| - | - | - |
| Reseller | [Bango Music](/testing/bango-music) | Content Provider |
| Content Provider | BangoTel | Reseller |

This isolates your use cases from the eventual counterparty Partner and helps you confirm that your use cases, API requests, lifecycle handling, and operating flows work correctly.

<Info>
  Follow the [quick start bundle](/getting-started/quick-start-bundle) to run a Reseller two-party test using Bango Music.
</Info>

## Three-party testing

After the individual integration works with a DVM test Partner, test the intended partnership end to end in Sandbox.

In three-party testing:

1. The intended Partner with role Reseller sets up on DVM Sandbox.
2. The intended Partner with role Content Provider sets up on DVM Sandbox.
3. DVM routes the configured Offer and Entitlement flows between both Partners.
4. Both Partners verify the lifecycle and operational results.

Three-party testing proves the complete partnership integration before production configuration and launch.

<Note>
  The required test scenarios depend on the integration and partnership. Bango will confirm any additional testing or certification activities needed before production.
</Note>

## What to test

Test the flows your partnership will depend on in production. For a typical subscription bundle partnership, this includes:

* Authenticate and integrate to the DVM APIs
* Discover the Products and Offers available to you
* Create a Consumer Offer
* Confirm the related Entitlement is provisioned
* Complete activation where the Product requires it
* Retrieve and handle Consumer Offer and Entitlement lifecycle states
* Cancel or terminate the Consumer Offer as required
* Receive and process applicable notifications
* Verify the resulting activity in DVM

Use the [DVM API documentation](/API/dvm-api-overview) for the API operations and the task guides for the behavior you are testing.

## Verify your results

Validate each test from the perspective of both the API integration and the resulting DVM state.

<CardGroup cols={3}>
  <Card title="API state" icon="rectangle-api">
    Check API responses and retrieve the Consumer Offer or Entitlement to confirm the expected lifecycle state.
  </Card>

  <Card title="Notifications" icon="message-code">
    Confirm your integration receives and handles the notifications required by the flow.
  </Card>

  <Card title="DVM" icon="screen-users">
    Use [Dashboard](/DVM-dashboard) and [Care](/partner-care/care) to confirm the expected operational result.
  </Card>
</CardGroup>

## Sandbox limitations

Sandbox is designed for functional and integration testing.

Use it to validate:

* API integration behavior
* Offer and Entitlement lifecycle flows
* Reseller and Content Provider interactions
* Consumer journeys
* Operational behavior in Dashboard and Care

Sandbox uses test configuration and test data in a dedicated environment. It does not affect production consumers or production launches.

<Warning>
  Do not use DVM Sandbox for load or performance testing. Agree any performance-testing requirements with Bango before running them.
</Warning>

## Move toward production

When the required two-party and three-party flows have been validated on Sandbox, complete any testing and certification activities agreed with Bango.

Production can use different configuration and data from Sandbox while following the same DVM integration patterns.

<CardGroup cols={2}>
  <Card title="Test with Bango Music" icon="music" href="/testing/bango-music" cta="Learn more">
    Use the DVM test Content Provider to validate a Reseller integration.
  </Card>

  <Card title="Run the quick start" icon="rocket" href="/getting-started/quick-start-bundle" cta="Start testing">
    Provision, activate, verify, and cancel your first Bango Music Offer.
  </Card>

  <Card title="Understand Sandbox" icon="flask-vial" href="/partner-management/sandbox" cta="Read more">
    Learn how test Partners and Sandbox configuration fit into the DVM Partner model.
  </Card>

  <Card title="Explore the DVM APIs" icon="rectangle-api" href="/API/dvm-api-overview" cta="Open API docs">
    Review the APIs and core resources used by your integration.
  </Card>
</CardGroup>
