theforeman / theforeman/foremanctl
Test slowness analysis
Open
Nobody has claimed this yet.
tests
- Dominant language
- Python
- Stars
- 27
- Forks
- 47
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 40
Description
The test suite can take anywhere from 25 to 40 minutes to run, the output of slowest tests:
================================= fixture duration top ==================================
total name num avg min
0:05:38.276881 product 6 0:00:56.799337 0:00:52.705898
0:03:00.001665 yum_repository 3 0:00:59.999550 0:00:59.997508
0:03:00.001399 client_environment 1 0:03:00.001399 0:03:00.001399
0:01:00.021677 container_repository 1 0:01:00.021677 0:01:00.021677
0:00:59.999780 file_repository 1 0:00:59.999780 0:00:59.999780
0:00:59.466323 activation_key 1 0:00:59.466323 0:00:59.466323
0:00:22.545814 organization 8 0:00:02.646113 0:00:01.671402
0:00:00.297948 lifecycle_environment 2 0:00:00.148974 0:00:00.143706
0:00:00.185813 foreman_status_curl 1 0:00:00.185813 0:00:00.185813
0:00:00.139906 foreman_proxy_features_curl 1 0:00:00.139906 0:00:00.139906
0:00:00.136418 foreman_proxy_version_curl 1 0:00:00.136418 0:00:00.136418
0:00:00.112755 content_view 2 0:00:00.056378 0:00:00.049479
0:00:00.108367 pulp_status_curl 1 0:00:00.108367 0:00:00.108367
0:15:01.301332 grand total 56 0:00:00.136418 0:00:00.000020
================================ test call duration top =================================
total name num avg min
0:03:08.966803 test_foreman_content_view 2 0:01:34.483402 0:00:35.242703
0:00:36.872770 test_foreman_yum_repository 1 0:00:36.872770 0:00:36.872770
0:00:32.699503 test_foreman_file_repository 1 0:00:32.699503 0:00:32.699503
0:00:32.649446 test_foreman_container_repository 1 0:00:32.649446 0:00:32.649446
0:00:15.749353 test_tls 1 0:00:15.749353 0:00:15.749353
0:00:00.618766 test_candlepin_service 1 0:00:00.618766 0:00:00.618766
0:00:00.512020 test_foreman_dynflow_service_instances 3 0:00:00.17[105](https://github.com/theforeman/foreman-quadlet/actions/runs/13393857638/job/37407843172?pr=85#step:11:106)1 0:00:00.169360
0:00:00.434712 test_foreman_dynflow_container_instances 3 0:00:00.156331 0:00:00.118727
0:00:00.272073 test_candlepin_port 1 0:00:00.272073 0:00:00.272073
0:00:00.184062 test_https_foreman_ping 1 0:00:00.184062 0:00:00.184062
0:00:00.183739 test_artemis_port 1 0:00:00.183739 0:00:00.183739
0:00:00.174612 test_foreman_proxy_port 1 0:00:00.174612 0:00:00.174612
0:00:00.173589 test_pulp_worker_service 1 0:00:00.173589 0:00:00.173589
0:00:00.171828 test_foreman_port 1 0:00:00.171828 0:00:00.171828
0:00:00.171649 test_pulp_api_port 1 0:00:00.171649 0:00:00.171649
0:00:00.171434 test_postgresql_service 1 0:00:00.171434 0:00:00.171434
0:00:00.171301 test_pulp_api_service 1 0:00:00.171301 0:00:00.171301
0:00:00.17[106](https://github.com/theforeman/foreman-quadlet/actions/runs/13393857638/job/37407843172?pr=85#step:11:107)0 test_pulp_content_service 1 0:00:00.171060 0:00:00.171060
0:00:00.169928 test_foreman_service 1 0:00:00.169928 0:00:00.169928
0:00:00.169381 test_https_port 1 0:00:00.169381 0:00:00.169381
0:00:00.168641 test_pulp_content_port 1 0:00:00.168641 0:00:00.168641
0:00:00.168278 test_http_port 1 0:00:00.168278 0:00:00.168278
0:00:00.168277 test_postgresql_port 1 0:00:00.168277 0:00:00.168277
0:00:00.168241 test_redis_port 1 0:00:00.168241 0:00:00.168241
0:00:00.168169 test_redis_service 1 0:00:00.168169 0:00:00.168169
0:00:00.168131 test_httpd_service 1 0:00:00.168131 0:00:00.168131
0:00:00.155810 test_candlepin_status 1 0:00:00.155810 0:00:00.155810
0:00:00.139059 test_foreman_proxy_service 1 0:00:00.139059 0:00:00.139059
0:00:00.118747 test_certs_users_file 1 0:00:00.118747 0:00:00.118747
0:00:00.118298 test_https_pulp_auth 1 0:00:00.118298 0:00:00.118298
0:05:12.832672 grand total 63 0:00:00.156071 0:00:00.000080
================================ test setup duration top ================================
total name num avg min
0:08:01.479961 test_foreman_content_view 2 0:04:00.739980 0:01:57.532272
0:01:59.220963 test_foreman_container_repository 1 0:01:59.220963 0:01:59.220963
0:01:59.202205 test_foreman_yum_repository 1 0:01:59.202205 0:01:59.202205
0:01:59.159901 test_foreman_file_repository 1 0:01:59.159901 0:01:59.159901
0:00:56.448708 test_foreman_product 1 0:00:56.448708 0:00:56.448708
0:00:02.701269 test_foreman_lifecycle_environment 1 0:00:02.701269 0:00:02.701269
0:00:02.515203 test_foreman_organization 1 0:00:02.515203 0:00:02.515203
0:15:00.738586 grand total 63 0:00:00.000167 0:00:00.000106
============================== test teardown duration top ===============================
total name num avg min
0:08:56.684774 test_foreman_content_view 2 0:04:28.342387 0:02:29.405190
0:01:58.167677 test_foreman_container_repository 1 0:01:58.167677 0:01:58.167677
0:01:58.[107](https://github.com/theforeman/foreman-quadlet/actions/runs/13393857638/job/37407843172?pr=85#step:11:108)517 test_foreman_file_repository 1 0:01:58.107517 0:01:58.107517
0:01:53.977219 test_foreman_yum_repository 1 0:01:53.977219 0:01:53.977219
0:01:28.940870 test_foreman_lifecycle_environment 1 0:01:28.940870 0:01:28.940870
0:01:00.800359 test_foreman_product 1 0:01:00.800359 0:01:00.800359
0:00:28.514450 test_foreman_organization 1 0:00:28.514450 0:00:28.514450
0:17:45.198100 grand total 63 0:00:00.000090 0:00:00.000058
============================= slowest 10 durations =============================
387.28s teardown tests/client_test.py::test_foreman_content_view
363.95s setup tests/client_test.py::test_foreman_content_view
153.72s call tests/foreman_api_test.py::test_foreman_content_view
149.41s teardown tests/foreman_api_test.py::test_foreman_content_view
119.22s setup tests/foreman_api_test.py::test_foreman_container_repository
119.20s setup tests/foreman_api_test.py::test_foreman_yum_repository
119.16s setup tests/foreman_api_test.py::test_foreman_file_repository
118.17s teardown tests/foreman_api_test.py::test_foreman_container_repository
118.11s teardown tests/foreman_api_test.py::test_foreman_file_repository
[117](https://github.com/theforeman/foreman-quadlet/actions/runs/13393857638/job/37407843172?pr=85#step:11:118).53s setup tests/foreman_api_test.py::test_foreman_content_view
============ 61 passed, 2 xfailed, 8 warnings in 2279.52s (0:37:59) ============
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the reported suite timing and inspecting tests/client_test.py::test_foreman_content_view and the tests in tests/foreman_api_test.py named in the slowest-duration output. Compare setup, call, and teardown costs for the listed tests. The issue does not define a target runtime or specific change, so the completion criteria remain unspecified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- performance, testing-qa
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100