Skip to content

Chore(test): Reduce test timing #1970

@MarieSacksick

Description

@MarieSacksick

What would you like to say?

Our tests take a while with ubuntu machines - up to 9 minutes.
Let's see if we can reduce the time needed for some of them.

Here are the top 20 tests in terms of duration:

  • 2.27s setup tests/unit/displays/table_report/test_estimator.py::test_error_wrong_param[params0-When kind='dist', at least one of x, y must be provided and]
  • 2.22s setup tests/unit/displays/table_report/test_common.py::test_json_dump
  • 2.13s call tests/unit/reports/estimator/data/test_accessor.py::test_analyze_data_source_with_y
  • 2.02s setup tests/unit/displays/table_report/test_estimator.py::test_constructor
  • 1.85s call src/skore/_sklearn/_cross_validation/data_accessor.py::_DataAccessor.analyze:0
  • 1.79s call tests/unit/reports/estimator/test_report.py::test_cache_predictions[2-forest_binary_classification_with_test-True-10]
  • 1.56s setup tests/unit/displays/table_report/test_estimator.py::test_plot_duration_data_1d
  • 1.53s setup tests/unit/displays/table_report/test_common.py::test_repr
  • 1.51s setup tests/unit/displays/table_report/test_estimator.py::test_error_wrong_param[params2-When kind='corr', 'x' argument must be None.]
  • 1.48s call src/skore/_sklearn/_plot/data/table_report.py::TableReportDisplay:0
  • 1.46s setup tests/unit/displays/table_report/test_estimator.py::test_error_wrong_param[params1-When kind='dist', at least one of x, y must be provided and]
  • 1.43s setup tests/unit/displays/table_report/test_estimator.py::test_error_wrong_param[params3-'kind' options are 'dist', 'corr', got 'unknown'.]
  • 1.42s call tests/unit/reports/estimator/data/test_accessor.py::test_analyze_data_source_without_y
  • 1.33s call src/skore/_sklearn/_plot/data/table_report.py::TableReportDisplay._plot_matplotlib:0
  • 1.30s setup tests/unit/displays/table_report/test_common.py::test_corr_plot
  • 1.27s setup tests/unit/displays/table_report/test_estimator.py::test_frame[train]
  • 1.14s call src/skore/_sklearn/_estimator/data_accessor.py::_DataAccessor.analyze:0
  • 1.13s setup tests/unit/displays/table_report/test_estimator.py::test_frame[test]
  • 1.12s setup tests/unit/displays/table_report/test_estimator.py::test_plots_2d
  • 1.10s setup tests/unit/displays/table_report/test_estimator.py::test_categorical_plots_1d

(The durations displayed here are from my computer - most likely, it takes even longer in the CI).
Hint: sometimes we are using important datasets, while we may not need it.

To check before/after when optimizing a test, run pytest tests/unit/displays/table_report/test_cross_validation.py::test_html_repr --durations=1 (replace with the test adress you are interested in).

Metadata

Metadata

Assignees

No one assigned

    Labels

    choreInternal enhancement work to be doneepicThis issue represents major product increments

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions