Toolverse
All skills

temporal-python-testing

by wshobson

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

Quick info

Author
wshobson
Category
Testing
Views
78

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

  1. Zainstaluj umiejętność w swoim projekcie agenta, dodając referencję do skill'u temporal-python-testing z repozytorium wshobson/agents.

  2. 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.

  3. 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.

  4. 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.

  5. Dla testów integracyjnych mockuj aktywności, aby izolować logikę przepływu, i uruchamiaj workers z testowymi danymi.

  6. 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.

Related skills