2017-03-06 9 views
6

Kiedy należy używać każdej z opcji --runInBand lub --maxWorkers 1?Jest: Różnica między --runInBand i --maxWorkers 1

Jeśli moim zamiarem jest przeprowadzanie wszystkich testów kolejno (jeden po drugim, w kolejności), która z nich jest odpowiednia?


Extra szczegół:

Używam żartem przetestować aplikację NodeJs express, ze testy integracyjne uderzanie punkty końcowe HTTP poprzez supertest. Nie może to wpłynąć na odpowiedź, wspominając tylko w przypadku, gdy jest to istotne.

Oto odniesienie żartem CLI:

https://facebook.github.io/jest/docs/cli.html

Istotne części:

--maxWorkers=<num>

Alias: -w. Określa maksymalną liczbę pracowników puli pracowników odradza się do przeprowadzania testów. Domyślnie jest to liczba rdzeni dostępnych na twoim komputerze. Przydatne może być dostosowanie tego w środowiskach o ograniczonych zasobach, takich jak CI, ale ustawienie domyślne powinno być odpowiednie dla większości przypadków użycia.

--runInBand

Alias: -I. Wszystkie testy należy przeprowadzać seryjnie w bieżącym procesie, zamiast tworzyć pulę procesów potomnych, które uruchamiają testy. Może to być przydatne do debugowania.

Odpowiedz

3

Nie ma różnicy. Oto metoda, w której robi się odczytać z args obiektu:

export default function getMaxWorkers(argv: Argv): number { 
    if (argv.runInBand) { 
    return 1; 
    } else if (argv.maxWorkers) { 
    return parseInt(argv.maxWorkers, 10); 
    } else { 
    const cpus = os.cpus().length; 
    return Math.max(argv.watch ? Math.floor(cpus/2) : cpus - 1, 1); 
    } 
} 

original source code on github