Test Case ID

Test Objective

Test Steps

Expected Outcome

Test Type

AIP78_TC_001

Verify user is able to use new API endpoints that allow CRUD operations for backfill runs

1. Send a POST request to create a backfill job for a specific DAG using API with valid parameters. 2. Send a GET request to fetch the created backfill job details and verify its presence.

All CRUD operations are successful without errors, and changes are reflected correctly.

Positive

AIP78_TC_002

Verify user is able to create backfills for different time ranges

1. Create multiple backfill jobs for the same DAG using different combinations of start_date and end_date via API.
2. Fetch each created backfill job to verify the specified time ranges.

Backfill jobs are created successfully with the correct time ranges.

Positive

AIP78_TC_003

Verify user is still able to run backfills using CLI

1. Run the backfill command using CLI for a specific DAG with valid parameters.
2. Verify that parameters mentioned here are not available.

CLI backfill runs successfully with only the supported parameters.

Positive

AIP78_TC_004

Verify backfills work with CLI new config parameters (from_date and to_date)

1. Run backfill command using CLI with newly introduced config parameters.
2. Verify the backfill execution and its parameters from the job status and logs.

Backfill runs successfully with new configuration parameters.

Positive

AIP78_TC_005

Verify user can create, monitor, clear, and manage backfill jobs from UI

1. Create a backfill job from the API or CLI.
2. Access the web UI and monitor the backfill job status.
3. Clear or manage the backfill job using available UI options.

Users can create, monitor, and manage backfill jobs from the UI without issues.

Positive

AIP78_TC_006

Verify attributes depends_on_past, start_date

1. Create a backfill job for a DAG.

depends_on_past and start_date should work as expected

Positive

AIP78_TC_007

Verify BackfillRunDagRun table correctly maps Backfill job with DAG run

1. Create a backfill job and verify entries in the BackfillRunDagRun table.
2. Verify that each entry correctly associates a backfill job with the corresponding DAG run.

BackfillRunDagRun table correctly maps each backfill job with the appropriate DAG runs.

Positive

AIP78_TC_008

Verify backfill DAG runs respect concurrency limitations

1. Create a backfill job with multiple DAG runs.
2. Verify that the scheduler respects defined concurrency limitations when creating and scheduling DAG runs.

Backfill DAG runs are created and managed within defined concurrency limitations.

Positive

AIP78_TC_009

Verify user cannot use LocalExecutor for backfills

1. Run a backfill command with --local parameter in CLI.
2. Verify that the command fails with an appropriate error message indicating that local execution is not supported.

CLI command fails with an error, and backfills are not executed using LocalExecutor.

Negative

AIP78_TC_010

Perform scheduler benchmarking (task throughput tests)

1. Run backfill jobs under different scenarios (e.g., large backfill range, high number of tasks).
2. Measure scheduler throughput and observe any performance degradation.

Scheduler maintains acceptable performance under increased load due to backfill jobs.

Performance

AIP78_TC_011

Verify backfills for different types of DAGs (using dynamic mapping, datasets, setup & teardown, etc.)

1. Create backfill jobs for different types of DAGs (e.g., dynamic mapped tasks, setup & teardown tasks).
2. Monitor and verify the execution and outcome of each backfill.

Backfill jobs work correctly with various DAG types without errors.

Positive