temporal-python-testing
Test Temporal workflows with pytest, time-skipping, and mocking strategies. Covers unit testing, integration testing, replay testing, and local development setup. Use when implementing Temporal workflow tests or debugging test failures.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Test Temporal workflows with pytest, time-skipping, and mocking strategies. Covers unit testing, integration testing, replay testing, and local development setup. Use when implementing Temporal workflow tests or debugging test failures.
How to use
Zainstaluj umiejętność w swoim projekcie agenta, dodając referencję do skill'u temporal-python-testing z repozytorium wshobson/agents.
Załaduj odpowiedni zasób w zależności od typu testów: dla testów jednostkowych użyj resources/unit-testing.md (WorkflowEnvironment z przeskakiwaniem czasu), dla testów integracyjnych użyj resources/integration-testing.md (workers z mockowanymi aktywnościami), dla testów replay użyj resources/replay-testing.md.
Skonfiguruj pytest z asynchronicznymi fixtures zgodnie z wytycznymi z zasobu. Większość testów powinna być testami integracyjnymi — to rekomendowane podejście dla przepływów Temporal.
Dla testów jednostkowych pojedynczych przepływów lub aktywności użyj WorkflowEnvironment lub ActivityEnvironment, które umożliwiają przeskakiwanie czasu i szybkie wykonanie długotrwałych operacji.
Dla testów integracyjnych mockuj aktywności, aby izolować logikę przepływu, i uruchamiaj workers z testowymi danymi.
Waliduj determinizm przepływów za pomocą testów replay, porównując historię produkcji z przebiegiem testowym, aby upewnić się, że przepływy zachowują się konsekwentnie.