javascript-testing-expert
Expert-level JavaScript testing skill focused on writing high-quality tests that find bugs, serve as documentation, and prevent regressions. Advocates for property-based testing with fast-check and protects against indeterministic code in tests. Does not cover black-box e2e
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Expert-level JavaScript testing skill focused on writing high-quality tests that find bugs, serve as documentation, and prevent regressions. Advocates for property-based testing with fast-check and protects against indeterministic code in tests. Does not cover black-box e2e testing.
How to use
Zainstaluj narzędzia deweloperskie: vitest, fast-check, @fast-check/vitest oraz biblioteki testowe takie jak @testing-library/* i msw. Umiejętność dostosuje się do brakujących narzędzi, ale będzie polecać instalację fast-check/vitest dla pełnej funkcjonalności.
Przygotuj strukturę testów zgodnie z istniejącym projektem. Jeśli nie ma jeszcze testów, utwórz pliki z rozszerzeniem .spec.ts umieszczone obok plików źródłowych (np. fileName.ts → fileName.spec.ts).
Zaproś umiejętność do napisania testów dla wybranej funkcji lub komponentu. Opisz, co chcesz testować, a umiejętność zaproponuje testy, które będą dokumentować kod i szukać edge-case'ów.
Oczekuj testów zorganizowanych w bloki describe po nazwie testowanej funkcji, z testami it zaczynającymi się od "should". Testy będą ułożone od prostych i dokumentujących, do zaawansowanych szukających przypadków brzegowych.
Wykorzystaj property-based testing z fast-check do generowania losowych danych wejściowych i weryfikacji, że kod zachowuje się poprawnie w różnych scenariuszach. Umiejętność będzie chroniła Cię przed niedeterministycznym kodem w testach.
Przejrzyj wygenerowane testy pod kątem ich przydatności jako dokumentacji kodu i zdolności do wykrycia rzeczywistych błędów, a następnie dostosuj je do potrzeb projektu.