Toolverse
Wszystkie skille

add-unit-tests

autor: inclusionAI

Pisz testy jednostkowe zgodnie ze standardami projektu AReaL

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Testowanie
Wyświetlenia
2

O skillu

Umiejętność ułatwiająca dodawanie testów jednostkowych do projektu AReaL. Użyj jej, gdy chcesz napisać testy dla nowej funkcjonalności, zwiększyć pokrycie testami lub zrozumieć konwencje testowania w projekcie. Skill zawiera przewodnik krok po kroku obejmujący dwa główne typy testów: testy jednostkowe (uruchamiane bezpośrednio przez pytest) oraz testy rozproszone (uruchamiane przez torchrun). Dowiesz się, jak tworzyć pliki testów z prawidłową konwencją nazewnictwa i pisać funkcje testowe zgodnie ze wzorem Arrange-Act-Assert.

Jak używać

  1. Zidentyfikuj, kiedy potrzebujesz tego skilla: gdy chcesz dodać testy do nowej funkcjonalności, zwiększyć pokrycie testami lub zrozumieć wzorce testowania w AReaL. Skill jest automatycznie wyzwalany, gdy zapytasz "jak dodać testy?" lub sformułujesz podobne pytanie.

  2. Zapoznaj się z dwoma typami testów dostępnymi w projekcie. Testy jednostkowe testują poszczególne funkcje i moduły, znajdują się w ścieżce tests/test_<moduł>_<funkcja>.py i uruchamiają się bezpośrednio przez pytest. Testy rozproszone testują zachowanie równoległe, znajdują się w tests/torchrun/run_*.py i są wywoływane przez torchrun, ale wciąż uruchamiane z poziomu pytest.

  3. Utwórz plik testowy z prawidłową konwencją nazewnictwa: test_<moduł>_<funkcja>.py. Zaimportuj moduł, który chcesz testować (np. from areal.dataset.gsm8k import get_gsm8k_sft_dataset), oraz opcjonalne narzędzia testowe z tests.utils.

  4. Napisz funkcje testowe, stosując wzór Arrange-Act-Assert. W sekcji Arrange przygotuj dane wejściowe i oczekiwany wynik. W sekcji Act wykonaj testowaną funkcję. W sekcji Assert porównaj rzeczywisty wynik z oczekiwanym.

  5. Uruchom testy za pomocą pytest, aby sprawdzić, czy działają poprawnie. Dla testów rozproszonych pytest automatycznie wywoła torchrun w tle.

Podobne skille