Skip to content

Add separate test job to run only time-bound tests in isolation #32620

@potiuk

Description

@potiuk

Body

There are few tests that have some "timing" component - i.e they depend on how fast they are run. This might lead to flaky tests when the test are run in parallel to some other tests in various environments.

Ideally, we should avoid such tests, however sometimes it is necessary to have them. For example: #32612 added test that checks how slow the CLI tests are. We likely won't avoid such tests.

However, it might be a good idea to not run those tests in the main test run when we run tests in parallell - we could easily add another job (only for sqlite, only running on sequential set of timing tests, for one Python version only). Those tests could be skipped in regular runs.

Such test job would have much more stable envirionment for such timing tests, it would also make it possible to dial-down some of the time limits we have there, because currently a number of those tests have much higher limits set to account for such "busy" environment.

That would require:

  • adding a separate "timing_tests" folder and Timing test type and move such tests there
  • exclude Timing test type from --parallel runs
  • add a separate job to only run the Timing test type (sequentially)

Committer

  • I acknowledge that I am a maintainer/committer of the Apache Airflow project.

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind:metaHigh-level information important to the community

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions