Tests in the OpenMetadata UI
Here you can see all the supported tests definitions and how to configure them in the UI. A Test Definition is a generic definition of a test. This Test Definition then gets specified in a Test Case. This Test Case is where the parameter(s) of a Test Definition are specified. In this section, you will learn what tests we currently support and how to configure them in the OpenMetadata UI.Table Tests
Tests applied on top of a Table. Here is the list of all table tests:- Table Row Count to Equal
- Table Row Count to be Between
- Table Column Count to Equal
- Table Column Count to be Between
- Table Column Name to Exist
- Table Column to Match Set
- Table Custom SQL Test
- Table Row Inserted Count To Be Between
- Compare 2 Tables for Differences
- Table Data to Be Fresh [OpenMetadata]
Table Row Count to Equal
Validate that the total number of rows in a table exactly matches an expected value.**When to Use
- To monitor tables where row count is expected to remain fixed (e.g., dimension tables).
- To catch over- or under-loading issues after ETL processes.
- To verify baseline data volumes for test/staging/prod comparisons.
Test Summary
Test Logic
Table Row Count to be Between
Ensure that the total number of rows in the table falls within an expected range.When to Use
- To monitor for abnormal growth or shrinkage in table size.
- To catch failed inserts, unintended truncations, or unexpected data surges.
- To set alerts based on historical data volume expectations.
Test Summary
- At least one of these values is required to run the test.
Test Logic
Table Column Count to Equal
Validate that the table contains exactly the expected number of columns.When to Use
- To detect unapproved schema changes (e.g., columns being added or dropped).
- To enforce data contracts between teams or systems.
- To ensure structural consistency across environments.
Test Summary
Test Logic
Table Column Count to be Between
Validate that the number of columns in a table falls within a defined range.When to Use
- To detect schema drift or changes in table structure.
- To ensure a table has a predictable number of columns across environments (e.g., staging vs. production).
Test Summary
Test Logic
Table Column Name to Exist
Ensure that a specific column is present in the table schema.When to Use
- To validate that required schema fields exist (e.g.,
order_id,customer_id). - To monitor schema changes that might break downstream processes.
- To enforce critical column presence in governed datasets.
Test Summary
Test Logic
Table Column to Match Set
Validate that a table’s column names match a predefined set — with or without order sensitivity.When to Use
- To ensure schema alignment across different environments or pipeline stages.
- To detect unexpected column additions, deletions, or reordering.
- To enforce table contracts where the exact structure is critical.
Test Summary
Test Logic
Table Custom SQL Test
Use this test to define your own validation logic using a custom SQL expression.When to Use
- To implement logic beyond predefined test definitions.
- To detect outliers, nulls, duplicates, or business-specific data anomalies.
- When you need full flexibility using SQL syntax.
Test Summary
Test Logic
Table Row Inserted Count To Be Between
Check that the number of rows inserted during a defined time window falls within an expected range.**When to Use
- To detect whether recent data ingestion volumes are within acceptable limits.
- To monitor time-partitioned tables for daily/hourly/monthly data drops or spikes.
- To validate pipeline freshness and completeness over time.
Test Summary
Test Logic
Compare 2 Tables for Differences
Use this test to verify data consistency between two tables, even across different platforms or services.When to Use
- After data replication or migration (e.g., Snowflake → Redshift).
- To validate data integrity between source and target systems.
Test Summary
Test Logic
🌐 Supported Data Sources
- Snowflake
- BigQuery
- Athena
- Redshift
- Postgres
- MySQL
- MSSQL
- Oracle
- Trino
- SAP Hana
Table Data to Be Fresh [OpenMetadata]
Ensure that table data is being updated frequently enough to be considered fresh.When to Use
- To monitor data pipelines for staleness or lag.
- To detect delays in scheduled batch updates.
- To ensure compliance with SLAs for near real-time data delivery.
Test Summary
Test Logic
For column-level test configurations in the UI, see Column Tests - UI Config.