Biorąc pod uwagę następujące elementy:Python testy Nos z generatora nie działać równolegle
from time import sleep
def runTest(a):
sleep(1)
assert a >= 0
def test_all():
for i in range(5):
yield (runTest, i)
spodziewałbym pięć testów, aby uruchomić w biegnącej równolegle z nosetests --processes=8
a więc działają w około jednej sekundy - jednak trwa niewiele ponad pięć sekund do uruchomienia: wydaje się, że działają kolejno i nie współbieżnie.
Według dokumentacji nosowej wtyczka wieloprocesorowa obsługuje generatory testowe (jak nazywa to dokumentacja nosa) od 1.1: Używam noska 1.3.0, więc powinien być obsługiwany. Dodawanie _multiprocess_can_split_ = True
robi różnicę, jak można się spodziewać, ponieważ urządzenia nie są używane.
Jak uruchomić te pięć testów jednocześnie?
Chciałbym raczej zrozumieć, dlaczego wtyczka wieloprocesowa nosa nie jest w stanie uruchomić istniejących testów równolegle, a nie równolegle do nich na zewnątrz nosa. – gsnedders
Nie wiem, jakich ustawień używasz, ale to rozwiązanie w ogóle nie działa. Wszystkie testy są przeprowadzane w tym samym procesie i są uruchamiane sekwencyjnie. Dokonano tego na nosie 1.3 przy użyciu różnych kombinacji zmiennych wieloprocesowych i poleceń "nose-testów". Wydaje się, że problemy pochodzą z plonów. – magixx