Test Case ID

Test Objective

Test Steps

Expected Outcome

Test Type

TC_001

Verify successful renaming of Datasets to Assets in the Airflow UI.

1. Open the Airflow UI. <br> 2. Navigate to the Datasets view. <br> 3. Check if the term "Datasets" has been replaced by "Assets."

The term "Datasets" should be replaced with "Assets" in the UI, including the view name and any dataset references.

Positive

TC_002

Verify that the `Asset` class can be instantiated with a valid `name`.

1. Create a new asset using `Asset(name="test_asset")`. <br> 2. Check if the asset is successfully instantiated.

The asset should be instantiated with the provided name without errors.

Positive

TC_003

Verify that an `Asset` must have either a `name` or `uri`.

1. Create an asset without providing either `name` or `uri`. <br> 2. Observe the behavior.

The system should raise an error indicating that at least one of `name` or `uri` is required.

Negative

TC_004

Verify grouping of assets by the `group` attribute in the UI.

1. Create assets with different `group` values (e.g., model and dataset). <br> 2. Open the Assets view in the UI. <br> 3. Check if the assets are correctly grouped by their `group` attribute.

Assets should be displayed under their respective groups in the Assets view (e.g., model, dataset).

Positive

TC_005

Verify creation of asset subclasses like `Dataset` and `Model`.

1. Instantiate a `Dataset` and a `Model` subclass. <br> 2. Check if the objects are created successfully.

Both the `Dataset` and `Model` subclasses should be instantiated without errors.

Positive

TC_006

Verify that subclassed assets (like `Dataset`) are auto-grouped by their types in the UI.

1. Create assets using `Dataset` and `Model`. <br> 2. View them in the Assets view in the UI. <br> 3. Check if they are grouped under their respective types (dataset, model).

Assets should be auto-grouped by their type (e.g., dataset, model) in the UI.

Positive

TC_007

Test for error when attempting to create assets with duplicate `name`.

1. Create two assets with the same `name` value. <br> 2. Check for errors or warnings.

The system should raise an error indicating a duplicate asset name.

Negative

TC_008

Validate the display of `Asset` objects in the Airflow web UI after creation.

1. Create several assets. <br> 2. Run a DAG utilizing these assets. <br> 3. Open the UI and check if the assets are listed correctly under the Assets view.

All created assets should appear in the Assets view, reflecting correct data.

Positive

TC_009

Verify proper URI format handling in `Asset` instantiation.

1. Create an asset using an `ObjectStoragePath` as the `uri` argument. <br> 2. Check if it is converted to a URI string.

The `ObjectStoragePath` should be correctly converted to a URI string during asset instantiation.

Positive

TC_010

Validate that the task’s `inlets` and `outlets` are correctly tied to the associated assets.

1. Create a DAG with tasks using `inlets` and `outlets` pointing to assets. <br> 2. Run the DAG and check task execution results.

The tasks should execute correctly, using the inlets and outlets to interact with the assets.

Positive

TC_011

Verify color coding for different asset groups in the UI.

1. Create assets belonging to different groups (e.g., dataset, model). <br> 2. Check if the assets are color-coded according to their group in the UI.

The assets should be color-coded by their group in the Assets view.

Positive

TC_012

Verify that assets are updated periodically in Airflow as expected.

1. Create a periodic DAG that updates assets. <br> 2. Run the DAG multiple times. <br> 3. Check if the assets are updated incrementally or replaced based on configuration.

The assets should either be replaced, appended to, or versioned as expected after each DAG run.

Positive

TC_013

Validate asset updates when used in backfill operations.

1. Create assets and backfill them in a DAG run. <br> 2. Check if assets are updated retroactively as expected.

Assets should update correctly based on the backfill operation.

Positive

TC_014

Test asset categorization with user-defined subclasses.

1. Create a custom subclass of Asset. <br> 2. Instantiate the subclass and check if it appears in the Assets view.

The custom asset should appear in the Assets view, categorized according to its type or group.

Positive