pytest-gen
作者: github
生成全面的pytest测试——在生成测试、创建测试套件或测试Python代码时使用
npx skills add https://github.com/github/copilot-cli-for-beginners --skill pytest-genPytest Generation Skill
When generating tests, follow this structure.
Test Organization
- Group tests by function under test
- Use
@pytest.mark.parametrizefor multiple inputs - Use fixtures for shared setup
- Follow arrange/act/assert pattern
Coverage Requirements
- Happy path (expected usage)
- Edge cases (empty strings, None, boundary values)
- Error cases (invalid input, file not found, wrong types)
- Integration (functions working together)
Template
import pytest
from module_under_test import function_to_test
@pytest.fixture
def sample_data():
"""Provide shared test data."""
return {"key": "value"}
class TestFunctionName:
"""Tests for function_name."""
def test_happy_path(self, sample_data):
result = function_to_test(valid_input)
assert result == expected_output
def test_empty_input(self):
result = function_to_test("")
assert result == expected_for_empty
@pytest.mark.parametrize("input_val,expected", [
("valid", True),
("", False),
(None, False),
])
def test_various_inputs(self, input_val, expected):
assert function_to_test(input_val) == expected