Skip to content

Conversation

@bcantoni
Copy link
Contributor

@bcantoni bcantoni commented Nov 5, 2025

Running locally on my Mac:

  • pytest: 1min 20sec
  • pytest -n auto: 15sec

https://pypi.org/project/pytest-xdist/

Running locally on my Mac:
- pytest: 1min 20sec
- pytest -n auto: 15sec

https://pypi.org/project/pytest-xdist/
@github-actions
Copy link

github-actions bot commented Nov 5, 2025

Coverage

Coverage Report
FileStmtsMissCoverMissing
tableauserverclient
   __init__.py70100% 
   config.py150100% 
   datetime_helpers.py2511 96%
   exponential_backoff.py200100% 
   filesys_helpers.py310100% 
   namespace.py2633 88%
tableauserverclient/bin
   _version.py358212212 41%
tableauserverclient/helpers
   __init__.py10100% 
   headers.py1388 38%
   logging.py20100% 
   strings.py3111 97%
tableauserverclient/models
   __init__.py450100% 
   collection_item.py4277 83%
   column_item.py553232 42%
   connection_credentials.py351111 69%
   connection_item.py861212 86%
   custom_view_item.py1381313 91%
   data_acceleration_report_item.py5411 98%
   data_alert_item.py15933 98%
   data_freshness_policy_item.py1561515 90%
   database_item.py2073636 83%
   datasource_item.py2991111 96%
   dqw_item.py10455 95%
   exceptions.py40100% 
   extract_item.py4544 91%
   favorites_item.py6988 88%
   fileupload_item.py190100% 
   flow_item.py1491010 93%
   flow_run_item.py720100% 
   group_item.py8422 98%
   groupset_item.py4511 98%
   interval_item.py1823232 82%
   job_item.py1881010 95%
   linked_tasks_item.py8011 99%
   location_item.py3011 97%
   metric_item.py1301212 91%
   oidc_item.py6422 97%
   pagination_item.py340100% 
   permissions_item.py1121212 89%
   project_item.py2073030 86%
   property_decorators.py1001818 82%
   reference_item.py2311 96%
   revision_item.py600100% 
   schedule_item.py20666 97%
   server_info_item.py3744 89%
   site_item.py6361212 98%
   subscription_item.py10122 98%
   table_item.py1191818 85%
   tableau_auth.py622525 60%
   tableau_types.py2711 96%
   tag_item.py150100% 
   target.py60100% 
   task_item.py5722 96%
   user_item.py3051414 95%
   view_item.py2201515 93%
   virtual_connection_item.py6488 88%
   webhook_item.py660100% 
   workbook_item.py3621616 96%
tableauserverclient/server
   __init__.py90100% 
   exceptions.py40100% 
   filter.py2111 95%
   pager.py3311 97%
   query.py1431818 87%
   request_factory.py1243183183 85%
   request_options.py37355 99%
   server.py1881919 90%
   sort.py60100% 
tableauserverclient/server/endpoint
   __init__.py340100% 
   auth_endpoint.py751010 87%
   custom_views_endpoint.py1471212 92%
   data_acceleration_report_endpoint.py210100% 
   data_alert_endpoint.py942323 76%
   databases_endpoint.py1113030 73%
   datasources_endpoint.py3303434 90%
   default_permissions_endpoint.py4433 93%
   dqw_endpoint.py451616 64%
   endpoint.py1871717 91%
   exceptions.py7066 91%
   favorites_endpoint.py952222 77%
   fileuploads_endpoint.py510100% 
   flow_runs_endpoint.py6299 85%
   flow_task_endpoint.py2122 90%
   flows_endpoint.py2125454 75%
   groups_endpoint.py12699 93%
   groupsets_endpoint.py7277 90%
   jobs_endpoint.py6899 87%
   linked_tasks_endpoint.py380100% 
   metadata_endpoint.py881414 84%
   metrics_endpoint.py5566 89%
   oidc_endpoint.py4211 98%
   permissions_endpoint.py4433 93%
   projects_endpoint.py1502424 84%
   resource_tagger.py1273636 72%
   schedules_endpoint.py1081111 90%
   server_info_endpoint.py361010 72%
   sites_endpoint.py1302727 79%
   subscriptions_endpoint.py561414 75%
   tables_endpoint.py1103636 67%
   tasks_endpoint.py6366 90%
   users_endpoint.py1341616 88%
   views_endpoint.py14099 94%
   virtual_connections_endpoint.py1131010 91%
   webhooks_endpoint.py5499 83%
   workbooks_endpoint.py3452424 93%
TOTAL11607138488% 

@bcantoni
Copy link
Contributor Author

bcantoni commented Nov 5, 2025

Okay not so fast -- tests ran fine locally but on GitHub several are failing with serialization problems so I'll need to look into this further.

@bcantoni bcantoni changed the title Add pytest-xdist plugin to speed up tests Experiment: Add pytest-xdist plugin to speed up tests Nov 5, 2025
@jorwoods
Copy link
Contributor

jorwoods commented Nov 7, 2025

@bcantoni I did a test and it looks like the issue is arising because of mixing pytest and unittest. The test test_add_users for example fails when in a unittest.TestCase, but succeeds when it is a simple function that takes a pytest fixture. Given I am working my way through converting the tests, perhaps we delay the switch to using pytest-xdist?

@jorwoods
Copy link
Contributor

jorwoods commented Nov 8, 2025

@bcantoni #1679 and #1684 fix the race conditions present in the unittest.TestCase classes by converting those tests to parameterized pytest functions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants