Bruno Oliveira
78030e3d32
Fix warnings transfer between workers and master node with pytest >= 3.8
...
Fix #341
2018-09-25 10:01:20 -03:00
Bruno Oliveira
9bcd0e4352
Optimize collection performance
...
Only send failed collection reports, as master is only interested in failed
reports.
Fix #330
2018-08-18 23:09:00 -03:00
Bruno Oliveira
fced1645cb
Run pre-commit: black, whitespaces, rst
2018-07-27 17:50:55 -03:00
Bruno Oliveira
fe1f239612
Remove last references to obsolete py.code
...
Also remove some unnecessary references to py.builtin
Fix #305
2018-07-23 17:36:03 -03:00
Ville Skyttä
663bbd5338
Use pytest instead of py.test per upstream recommendation, #dropthedot
...
http://blog.pytest.org/2016/whats-new-in-pytest-30/
https://twitter.com/hashtag/dropthedot
2018-07-07 00:01:11 +03:00
Bruno Oliveira
fd2e8a6711
Make all classes subclass from object
2018-06-03 16:10:24 -03:00
feuillemorte
b04703b6ba
#234 Fix flake 8 and fix comments
2018-01-17 23:34:39 +03:00
feuillemorte
40491279ef
#234 Added master/worker terminology
2018-01-17 23:07:29 +03:00
feuillemorte
f1e6dc4344
use master/worker terminology
2018-01-16 21:46:43 +03:00
Bruno Oliveira
449e6c2e00
Add support for the new pytest_runtest_logfinish hook (pytest 3.4)
2018-01-10 17:52:27 -02:00
Cornelius Riemenschneider
fad312fdb7
Add scheduling by test file.
2017-12-14 16:18:46 +01:00
Tim Jenness
9e59d07947
Stop looping if all workers have died
...
If the workers are crashing and the restart limit has been met,
we need to stop listening for events and trigger an internal
error.
2017-10-04 17:59:36 -07:00
Bruno Oliveira
f8e138b986
Fix tests incorrectly identified if worker crashes during teardown stage
...
Fix #124
2017-08-10 10:43:40 -03:00
Bruno Oliveira
d0474076e9
Transfer warnings from workers to master
...
Fix #92
2017-08-09 10:10:01 -03:00
Carlos Jenkins
b0916f06ce
Implemented a load scheduler that groups tests by scope.
2017-07-28 23:55:09 -06:00
Carlos Jenkins
8356cfa39d
Split schedulers into their own submodule.
2017-07-28 23:55:09 -06:00
Bruno Oliveira
95a62460aa
Revert "Mark test as complete at teardown."
...
This reverts commit 82b992a5fd .
2017-06-10 09:43:59 -03:00
reginaldl
82b992a5fd
Mark test as complete at teardown.
2017-02-23 11:31:37 -08:00
Michael Elovskikh
4ed8161ef8
Renamed scheduller remove_item method to mark_test_complete
2017-02-15 23:54:23 +05:00
Michael Elovskikh
c809406ef6
Refactor scheduller interface, make more properties instead of methods
2017-02-15 11:43:56 +05:00
Michael Elovskikh
a99e6e7ca8
Clean up scheduller interfaces
2017-02-15 00:21:26 +05:00
Michael Elovskikh
6200123fac
Made EachScheduling.numnodes countable from config
2017-02-14 20:19:55 +05:00
Michael Elovskikh
a2aaf9bf04
Rename init_distribute() to more clear schedule()
2017-02-14 20:19:55 +05:00
Michael Elovskikh
27ffbbb4f7
Unified scheduler class interface
2017-02-14 20:19:55 +05:00
Michael Elovskikh
81003df660
Fix codestyle
2017-02-14 20:19:55 +05:00
Michael Elovskikh
753f9241a7
Support older pytest versions
2017-02-14 20:19:55 +05:00
Michael Elovskikh
2ff2772521
Use pytest_xdist_make_scheduler hook to set up scheduller instance
2017-02-14 20:19:55 +05:00
Michael Elovskikh
d5ba3804bb
Use __import__ instead of importlib for py26 support
2017-02-14 20:19:55 +05:00
Michael Elovskikh
7d099b65c2
Allow custom scheduler class
2017-02-14 20:19:55 +05:00
Bruno Oliveira
305acdd72a
Cleanly shutdown workers if session should be interrupted
...
As discussed in #66
2016-06-07 19:35:08 -03:00
Bruno Oliveira
20fe1f9874
Skip progress display when in non-terminal (pytest >= 2.9)
...
See pytest-dev/pytest#1397
2016-05-11 22:15:25 -03:00
Bruno Oliveira
2ae9bd7f43
Add new pytest_xdist_node_collection_finished hook
...
Fix #8
2015-12-12 12:44:27 -02:00
Hyunjun Kim
4ff6be21a8
Fix typos
2015-12-09 13:23:43 +09:00
Nicholas Chammas
4c22653fd4
Typo fixes to docstrings
2015-12-01 14:45:03 -05:00
Steven Hazel
412febd898
pep8 and python 3 compatibility fixes
2015-11-18 13:39:53 -08:00
Steven Hazel
3140873f0a
bugfix: iterate in a python 3 compatible way
2015-11-18 13:34:39 -08:00
Steven Hazel
09d79ace35
Do a better job parallelizing the inital batch of tests when the
...
number of nodes is more than half the number of tests. This makes it
possible, for example, to run all tests in parallel, where previous
the maximum parallelization was half of all tests.
2015-11-18 13:06:04 -08:00
Ronny Pfannschmidt
0f5ef95be8
flake8 cleanup
2015-09-01 22:37:51 +02:00
Bruno Oliveira
4b1ddb9c81
Add --max-slave-restart option
...
Also changed wording used from "failed node" to "crashed slave", to conform
with other messages ("slave sw0 crashed")
2015-07-11 13:12:12 -03:00
Bruno Oliveira
a131d34b2d
testscollected is now a public Session attribute
2015-07-06 20:27:41 -03:00
Bruno Oliveira
05ab96feaf
update collected tests from slaves into main pytest session object
...
Upstream changes in https://github.com/pytest-dev/pytest/pull/817 make
pytest-dist always return EXIT_NOTESTSCOLLECTED because the
master node doesn't collect any tests. This patch updates the pytest session
about the collected items on the slaves.
2015-07-04 15:40:55 -03:00
Bruno Oliveira
d84f1f08d8
fix issue 594: xdist is not executing tests parametrized with random values
...
Now xdist properly reports the collection errors instead of silently failing to execute
the test suite.
2014-09-23 22:09:44 -03:00
Floris Bruynooghe
76c297bdb0
Fixes for node-restarting in each scheduling
...
* node2collection should only be populated when the collection is
added. This way collection_is_completed can be kept track of
correctly.
* The _removed2pending map needs to have the entire node as key
because it is needed to look up the collection of the gateway which
died in node2collection to check the collection of the replacement
node is identical.
* init_distribute() needs to actually keep track of the started nodes
otherwise it's (re)scheduling gets all confused and will re-schedule
too often.
2014-09-16 23:18:49 +01:00
Floris Bruynooghe
fc335fb7dc
Implement node-restarting for each scheduling
2014-09-16 16:01:51 +02:00
Floris Bruynooghe
f643991f7f
Very rough cut of restarting a failed node
2014-09-15 01:20:45 +02:00
Bruno Oliveira
9d549a0c06
Log different tests collected by slaves instead of an error
...
This is a proposal to fix #556 .
2014-08-02 20:59:45 -03:00
holger krekel
cc237b0d8e
fix various flakes issues and add "flakes" to tox tests
2014-07-20 16:56:21 +02:00
holger krekel
67f80b7c2c
fix pytest issue503: avoid random re-setup of broad scoped fixtures
...
(anything above function).
2014-07-20 16:41:03 +02:00
holger krekel
ffa156ced5
refine distribution fractions and make it dependend on the duration
...
of the last test in a node's set.
2014-01-27 12:39:43 +01:00
holger krekel
e26d4486fc
send multiple "to test" indices in one network message to a slave
...
and improve heuristics for sending chunks where the chunksize
depends on the number of remaining tests rather than fixed numbers.
This reduces the number of master -> node messages (but not the
reverse direction)
2014-01-27 11:37:40 +01:00