2014-10-31 34 views
5

Jak można uruchomić testy jednostkowe z nose dla aplikacji Apache Spark napisanych w języku Python?Running nosetests for pyspark

Z nose jeden zazwyczaj tylko wywołać komendę

nosetests 

aby uruchomić testy w katalogu pakietu Python tests. Skrypty Pyspark należy uruchamiać za pomocą polecenia spark-submit zamiast zwykłego pliku wykonywalnego Python, aby umożliwić import modułu-pyspark. Jak połączyć nosetests z pyspark, aby uruchomić testy dla mojej aplikacji Spark?

Odpowiedz

4

Jeśli to pomaga, możemy użyć testu nosa do przetestowania sparkling pandas. Robimy trochę magii w naszym pliku utils, aby dodać pyspark do ścieżki na podstawie zmiennej środowiskowej powłoki SPARK_HOME.

+0

To z pewnością brzmi interesująco. Czy chcesz dokładniej określić, co należy zrobić, aby przeprowadzić testy? Z góry dziękuję – karlson

+1

Oczywiście, test run-tests, który umieściliśmy w repo po prostu sprawdza, czy środowisko SPARK_HOME jest ustawione, i czy jest to wywołanie nosetests z bandą opcjonalnych flag. Dodaliśmy także podstawowy przypadek testowy, który rozszerzamy o nasze indywidualne testy, które uruchamiają i zatrzymują lokalny kontekst iskier. Działa to, ponieważ dodajemy rzeczy do naszej ścieżki Pythona w pliku utils, o którym wspomniałem, co prawdopodobnie oznacza brak testów. – Holden

+0

Dziękuję, za pomocą Twojego kodu udało mi się uruchomić testy jednostkowe! @Holden – karlson