write-test
Write integration tests for the Autumn billing system. Use when creating tests, writing test scenarios for billing/subscription features, track/check endpoints, or when the user asks about testing, test cases, or QA.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Write integration tests for the Autumn billing system. Use when creating tests, writing test scenarios for billing/subscription features, track/check endpoints, or when the user asks about testing, test cases, or QA.
How to use
Przed napisaniem jakiegokolwiek testu przeszukaj katalog testów w poszukiwaniu podobnych scenariuszy — grep pomoże ci znaleźć duplikaty. Przeczytaj plik reguł w
.claude/rules/write-tests.mdc, który zawiera 20 najczęstszych błędów popełnianych przez agenty.Zapoznaj się z systemem
initScenario— to główny mechanizm do tworzenia klientów, produktów i jednostek testowych. Funkcja przyjmuje unikalny identyfikator klienta, listę kroków konfiguracji (setup) oraz listę akcji do wykonania.Przygotuj dane testowe używając dostępnych fixture'ów:
itemsdo tworzenia pozycji (np. wiadomości miesięczne z limitami użycia),productsdo definiowania produktów (np. plan pro). Połącz je w strukturę, którą przekażesz doinitScenario.Zdefiniuj akcje testowe za pomocą helpera
s.billing.attach()lub innych dostępnych akcji z systemu. Te akcje będą wykonane w ramach inicjalizacji scenariusza i pozwolą ci przetestować przepływ rozliczeń.Po inicjalizacji scenariusza pobierz dane klienta za pomocą
autumnV1.customers.get()i sprawdzaj je używając narzędzi asercji:expectCustomerFeatureCorrectdo weryfikacji stanu funkcji orazexpectStripeSubscriptionCorrectdo sprawdzenia poprawności subskrypcji Stripe.Opakuj test w
test.concurrent()z opisową nazwą, aby umożliwić równoległy przebieg testów i ułatwić identyfikację, która funkcja jest testowana.