[tool:pytest] markers = stress: marks tests as stress tests (deselect with '-m "not stress"') error_handling: marks tests as error handling tests integration: marks tests as integration tests browser: marks tests as browser tests (may require selenium) slow: marks tests as slow running e2e: marks tests as end-to-end tests timeout: marks tests that need timeout protection testpaths = tests python_files = test_*.py python_classes = Test* python_functions = test_* # Default timeout for tests timeout = 60 # Ignore deprecation warnings from external libraries filterwarnings = ignore::DeprecationWarning:websockets.* ignore::pytest.PytestCollectionWarning ignore::pytest.PytestUnknownMarkWarning # Set asyncio default loop scope addopts = --timeout=60 --timeout-method=thread -v --tb=short