Skip to content

WIP/CI/TST: Clean up of the tests script #26949

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 8 commits into from
Closed

WIP/CI/TST: Clean up of the tests script #26949

wants to merge 8 commits into from

Conversation

datapythonista
Copy link
Member

@datapythonista datapythonista commented Jun 19, 2019

Follow up of the conversation in #26932, and fixing some of the things that #24106 tried.

The main change is call pytest once instead of once for single and once for multi. This shouldn't be a problem since I add the parameter --dist=loadfile which should prevent tests in the same file running in parallel. I don't think running serial tests in parallel with tests in other files should be a problem.

Other things cleaned in the PR:

  • Setting always the proxy (shouldn't hurt for not network tests, and makes things simpler)
  • Using as many processes as cores, not 2
  • Removed hack for when no tests were found (since we don't call only for single tests, there will always be tests to run)

So far testing, let's see how does this work in the CI.

@datapythonista datapythonista added Testing pandas testing functions or related to the test suite CI Continuous Integration Clean labels Jun 19, 2019
@TomAugspurger
Copy link
Contributor

Using dist=loadfile seems fine, assuming things are reasonable evenly spread across workers. I imagine that some of our files take much longer, so hopefully pytest-xdist is smart about scheduling.

@datapythonista
Copy link
Member Author

I guess we may need to split some big test files, but I think Jeff was requesting that for some already, and it's probably good anyway. I remember the tests taking longer the last time I tried this.

@datapythonista
Copy link
Member Author

Looks like couple of builds are indeed significantly longer here than when not using --dist=loadfile. I think should be easy to get the list of test files, with the amount time that each takes, and see if it makes sense to split something.

Then, I see that some tests are failing because the pandas module has more attributes than expected, 'hard_dependencies', 'dependency', 'missing_dependencies'. Not sure how this could be related to the changes here. Did anyone faced this before?

@TomAugspurger
Copy link
Contributor

TomAugspurger commented Jun 19, 2019 via email

@jbrockmendel
Copy link
Member

needs rebase

@jbrockmendel
Copy link
Member

@datapythonista needs rebase

@TomAugspurger
Copy link
Contributor

CI is hopefully fixed if you can merge master.

@datapythonista
Copy link
Member Author

Thanks, but even if the CI is green we can't merge this, since some builds take much longer with the change. Need to find the time to figure out how to solve it. Will leave it red for now so this is not merged by mistake.

@jreback
Copy link
Contributor

jreback commented Sep 8, 2019

getting pretty stale, closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI Continuous Integration Clean Testing pandas testing functions or related to the test suite
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants