testing-python
Python testing with pytest: fixtures, parametrize, mocking with unittest.mock, and coverage
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Python testing with pytest: fixtures, parametrize, mocking with unittest.mock, and coverage
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Architecture decisions: layering, design patterns, microservices trade-offs, and domain-driven design
Python architecture: PEP-8, type hints, clean layering, dependency injection, and testing strategy
General code review process: priority ordering, what to block on, how to give actionable feedback
Python data science: notebook structure, data validation, reproducibility, and model documentation
Git workflow: branch naming, conventional commits, PR conventions, and merge strategies
TypeScript refactoring: SOLID principles, DRY, type safety improvements, and eliminating code smells
| name | testing-python |
| description | Python testing with pytest: fixtures, parametrize, mocking with unittest.mock, and coverage |
unittest for new code.pytest / pytest --cov=src --cov-report=term-missingtests/test_<module>.py or co-located src/utils/test_format.py.tests/conftest.py.def test_format_date_returns_iso_string_for_valid_date():
# Arrange
date = datetime(2026, 1, 15)
# Act
result = format_date(date)
# Assert
assert result == "2026-01-15"
# conftest.py
@pytest.fixture
def db_session():
session = create_test_session()
yield session
session.rollback()
session.close()
# test file
def test_user_created(db_session):
user = create_user(db_session, name="Alice")
assert user.id is not None
@pytest.mark.parametrize("value,expected", [
("", True),
(" ", True),
("hello", False),
])
def test_is_blank(value, expected):
assert is_blank(value) == expected
from unittest.mock import patch, MagicMock
def test_sends_email_on_signup(mock_smtp):
with patch("myapp.mailer.smtplib.SMTP") as mock_smtp:
send_welcome_email("user@example.com")
mock_smtp.return_value.sendmail.assert_called_once()
pytest --cov in CI; fail below threshold with --cov-fail-under=80.