P
property-based-testing
Provides guidance for property-based testing across multiple languages and smart contracts. Use when writing tests, reviewing code with serialization/validation/parsing patterns, designing features, or when property-based testing would provide stronger coverage than
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Provides guidance for property-based testing across multiple languages and smart contracts. Use when writing tests, reviewing code with serialization/validation/parsing patterns, designing features, or when property-based testing would provide stronger coverage than example-based tests.
How to use
- Aktywuj umiejętność podczas pracy nad kodem zawierającym typowe wzorce property-based testing: pary serializacji (encode/decode, toJSON/fromJSON), parsery (URL, konfiguracja, protokoły), normalizatory (sanitize, format), walidatory (validate, check_*) lub operacje na strukturach danych (add/remove/get). 2. Umiejętność automatycznie wykryje te wzorce w Twoim kodzie — nie musisz jej ręcznie wywoływać. Skoncentruj się na sekcjach z transformacją danych lub logiką walidacji. 3. Dla par encode/decode zaproś umiejętność do napisania testów roundtrip — sprawdzających, czy dane po zakodowaniu i odkodowaniu wracają do oryginalnej postaci. 4. Dla funkcji czystych (bez efektów ubocznych) poproś o testy wielorakie — testujące idempotencję, porządkowanie i niezmienniki. 5. W smart contractach (Solidity, Vyper) użyj umiejętności do weryfikacji niezmienników stanu, operacji tokenów i kontroli dostępu. 6. Unikaj stosowania tej umiejętności do prostych operacji CRUD bez transformacji, kodu jednorazowego, funkcji z efektami ubocznymi (zapytania sieciowe, zapis do bazy) lub testów, gdzie konkretne przypadki przykładowe w pełni pokrywają wymagania.