Skip to main content

dbt logo

dbt-tests-adapter

For context and guidance on using this package, please read: "Testing a new adapter"

What is it?

This package includes reusable test cases that reinforce behaviors common to all or many adapter plugins. There are two categories of tests:

  1. Basic tests that every adapter plugin is expected to pass. These are defined in tests.adapter.basic. Given differences across data platforms, these may require slight modification or reimplementation. Significantly overriding or disabling these tests should be with good reason, since each represents basic functionality expected by dbt users. For example, if your adapter does not support incremental models, you should disable the test, by marking it with skip or xfail, as well as noting that limitation in any documentation, READMEs, and usage guides that accompany your adapter.

  2. Optional tests, for second-order functionality that is common across plugins, but not required for basic use. Your plugin can opt into these test cases by inheriting existing ones, or reimplementing them with adjustments. For now, this category includes all tests located outside the basic subdirectory. More tests will be added as we convert older tests defined on dbt-core and mature plugins to use the standard framework.

How to use it?

Each test case in this repo is packaged as a class, prefixed Base. To enable a test case to run with your adapter plugin, you should inherit the base class into a new class, prefixed Test. That test class will be discovered and run by pytest. It can also makes modifications if needed.

class TestSimpleMaterializations(BaseSimpleMaterializations):
    pass

Distribution

To install:

pip install dbt-tests-adapter

This package is versioned in lockstep with dbt-core, and the same versioning guidelines apply:

  • New "basic" test cases MAY be added in minor versions ONLY. They may not be included in patch releases.
  • Breaking changes to existing test cases MAY be included and communicated as part of minor version upgrades ONLY. They MAY NOT be included in patch releases. We will aim to avoid these whenever possible.
  • New "optional" test cases, and non-breaking fixes to existing test cases, MAY be added in minor or patch versions.

Assuming you adapter plugin is pinned to a specific minor version of dbt-core (e.g. ~=1.1.0), you can use the same pin for dbt-tests-adapter.

Note: This is packaged as a plugin using a python namespace package. It cannot have an __init__.py file in the part of the hierarchy to which it needs to be attached.

Release files for dbt-tests-adapter 1.20.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dbt-tests-adapter 1.20.0
File Size Uploaded
dbt_tests_adapter-1.20.0.tar.gz 175.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dbt-tests-adapter 1.20.0
File Interpreter ABI Platform
dbt_tests_adapter-1.20.0-py3-none-any.whl Python 3 none any Details

Total release size: 425.7 kB

Release files / dbt_tests_adapter-1.20.0.tar.gz

Download URL dbt_tests_adapter-1.20.0.tar.gz
Size 175.3 kB
Tags Source
SHA-256 checksum
How to use checksums
91562371852790a647c59270136a4461bfda7e7484f349fcd3473f0a1d6059c6
BLAKE2b-256 checksum
How to use checksums
5883ede118214addb99e8c45338d8b18e30a22872fc8c3043f429a538232e529
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 22, 2026.

Transparency log

Release files / dbt_tests_adapter-1.20.0-py3-none-any.whl

Download URL dbt_tests_adapter-1.20.0-py3-none-any.whl
Size 250.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
333d0d08c1690278a8cf681989f6359a7a8a5b3da464f14430c3ea3ea32fa5ff
BLAKE2b-256 checksum
How to use checksums
3f53860853817edbc50168af0e4520f6c203270e92e20f9edb2ca82c62116f3d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 22, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.20.0 This release

2 release files

1.19.6

2 release files

1.19.4

2 release files

1.19.0

2 release files

1.18.0

2 release files

1.17.0

2 release files

1.15.1

2 release files

1.10.4

2 release files

1.10.3

2 release files

1.10.1

2 release files

1.10.0

2 release files

1.9.2

2 release files

1.9.1

2 release files

1.9.0

2 release files

1.8.0

2 release files

1.7.20

2 release files

1.7.17

2 release files

1.7.15

2 release files

1.7.13

2 release files

1.7.12

2 release files

1.7.11

2 release files

1.7.10

2 release files

1.7.9

2 release files

1.7.8

2 release files

1.7.7

2 release files

1.7.6

2 release files

1.7.5

2 release files

1.7.4

2 release files

1.7.3

2 release files

1.7.2

2 release files

1.7.1

2 release files

1.7.0

2 release files

1.6.19

2 release files

1.6.17

2 release files

1.6.15

2 release files

1.6.13

2 release files

1.6.12

2 release files

1.6.11

2 release files

1.6.10

2 release files

1.6.9

2 release files

1.6.8

2 release files

1.6.7

2 release files

1.6.6

2 release files

1.6.5

2 release files

1.6.4

2 release files

1.6.3

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.12

2 release files

1.5.11

2 release files

1.5.10

2 release files

1.5.9

2 release files

1.5.8

2 release files

1.5.7

2 release files

1.5.6

2 release files

1.5.5

2 release files

1.5.4

2 release files

1.5.3

2 release files

1.5.2

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.10

2 release files

1.4.9

2 release files

1.4.8

2 release files

1.4.7

2 release files

1.4.6

2 release files

1.4.5

2 release files

1.4.4

2 release files

1.4.3

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.8

2 release files

1.3.7

2 release files

1.3.6

2 release files

1.3.5

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.7

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page