Zacząłem pracować nad dość dużym (wielowątkowym) projektem w Pythonie, z mnóstwem (jednostkowych) testów. Najważniejszym problemem jest to, że uruchomienie aplikacji wymaga wcześniej ustawionego środowiska, które jest realizowane przez menedżera kontekstu. Do tej pory korzystaliśmy z poprawionej wersji modułu uruchamiającego testy jednostkowe, który uruchamiałby testy wewnątrz tego menedżera, ale nie pozwala na przełączanie kontekstu między różnymi modułami testowymi.
Zarówno nos, jak i pytest obsługują taką rzecz, ponieważ obsługują mocowania na wielu ziarnistościach, więc szukamy przełączenia na nos lub pytest. Obie te biblioteki obsługiwałyby również testy „tagowania” i uruchamiały tylko te oznaczone podzbiory, co również chcielibyśmy zrobić.
Przeglądałem trochę dokumentację zarówno nosa, jak i pytesta i, o ile widzę, większa część tych bibliotek zasadniczo obsługuje tę samą funkcjonalność, z tym że może mieć inną nazwę lub wymagać nieco innej składni. Zauważyłem też drobne różnice w dostępnych wtyczkach (nos obsługuje wiele procesów, na przykład pytest nie wydaje się)
Wydaje się więc, że diabeł tkwi w szczegółach, co oznacza (przynajmniej często) w osobistym guście i lepiej wybrać bibliotekę, która najlepiej pasuje do naszego gustu.
Chciałbym więc poprosić o subiektywną argumentację, dlaczego mam iść z nosem lub zapytać o to, aby wybrać kombinację biblioteka / społeczność, która najlepiej odpowiada naszym potrzebom.