{"library":"pytest-factoryboy","title":"pytest-factoryboy","description":"pytest-factoryboy is a pytest plugin that integrates factory_boy for easily creating test data within your pytest tests. It provides fixtures for generating instances of your factory_boy factories, streamlining setup for database models or complex objects. As of version 2.8.1, it's actively maintained with a stable release cadence.","language":"python","status":"active","last_verified":"Thu May 14","install":{"commands":["pip install pytest-factoryboy"],"cli":null},"imports":["def test_something(factory): ..."],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import pytest\nimport factory\n\n# Assume a simple data model for demonstration\nclass User:\n    def __init__(self, username, email):\n        self.username = username\n        self.email = email\n\n    def __repr__(self):\n        return f\"User(username='{self.username}', email='{self.email}')\"\n\n# Define your factory_boy factory (e.g., in factories.py or conftest.py)\nclass UserFactory(factory.Factory):\n    class Meta:\n        model = User # Link to your actual model/class\n\n    username = factory.Sequence(lambda n: f'user{n}')\n    email = factory.LazyAttribute(lambda o: f'{o.username}@example.com')\n\n# In your conftest.py or test file, define a fixture that uses `pytest-factoryboy`'s `factory` fixture\n@pytest.fixture\ndef user_factory(factory):\n    # `factory` is provided by pytest-factoryboy, it returns a callable bound to UserFactory\n    return factory(UserFactory)\n\n# Now use your `user_factory` in tests\ndef test_create_single_user(user_factory):\n    user = user_factory()\n    assert user.username.startswith('user')\n    assert user.email.endswith('@example.com')\n    assert isinstance(user, User)\n\ndef test_create_multiple_users(user_factory):\n    users = user_factory.create_batch(3)\n    assert len(users) == 3\n    assert all(isinstance(u, User) for u in users)\n\ndef test_create_user_with_override(user_factory):\n    user = user_factory(username='admin_user', email='admin@example.com')\n    assert user.username == 'admin_user'\n    assert user.email == 'admin@example.com'","lang":"python","description":"This quickstart demonstrates how to define a `factory_boy` factory for a simple `User` class, then use the `pytest-factoryboy` provided `factory` fixture to create a specific `user_factory` fixture. This `user_factory` can then be used in your tests to create single instances, batches, or instances with overridden attributes.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-14","installed_version":"2.8.1","pypi_latest":"2.8.1","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":50,"avg_install_s":4.2,"avg_import_s":null,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"55.6M"},{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.9,"import_time_s":null,"mem_mb":null,"disk_size":"56M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"58.3M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":4,"import_time_s":null,"mem_mb":null,"disk_size":"59M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"49.8M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.9,"import_time_s":null,"mem_mb":null,"disk_size":"50M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"49.5M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":4,"import_time_s":null,"mem_mb":null,"disk_size":"50M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"56.0M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":5,"import_time_s":null,"mem_mb":null,"disk_size":"56M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pytest-factoryboy","exit_code":1,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null}]}}