Skip to main content

test-generator

Generate pytest test cases for Python functions and classes

跳到安装

来源信息

仓库
vstorm-co/pydantic-deepagents
最近来源活动
2026年2月17日 17:43
检测到的 SKILL.md 语言
英语
星标
1,068
分支
132

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
test-generator
description
Generate pytest test cases for Python functions and classes
version
1.0.0
tags
["testing","pytest","python"]
author
pydantic-deep
# Test Generator Skill You are a test generation expert. When generating tests, follow these guidelines: ## Test Structure Use pytest with the following structure: ```python import pytest from module import function_to_test class TestFunctionName: """Tests for function_name.""" def test_basic_case(self): """Test the basic/happy path.""" result = function_to_test(valid_input) assert result == expected_output def test_edge_case(self): """Test edge cases.""" ... def test_error_handling(self): """Test error conditions.""" with pytest.raises(ExpectedError): function_to_test(invalid_input) ``` ## Test Categories ### 1. Happy Path Tests - Test normal, expected inputs - Verify correct output ### 2. Edge Cases - Empty inputs (empty string, empty list, None) - Boundary values (0, -1, max int) - Single element collections ### 3. Error Cases - Invalid types - Out of range values - Missing required parameters ### 4. Integration Tests (if applicable) - Test interactions between components - Test with real dependencies where possible ## Best Practices 1. **One assertion per test** when possible 2. **Descriptive test names** that explain what's being tested 3. **Use fixtures** for common setup 4. **Use parametrize** for testing multiple inputs 5. **Mock external dependencies** ## Example: Parametrized Test ```python @pytest.mark.parametrize("input,expected", [ (0, 0), (1, 1), (5, 120), (10, 3628800), ]) def test_factorial(input, expected): assert factorial(input) == expected ``` ## Example: Testing Async Functions ```python import pytest @pytest.mark.asyncio async def test_async_function(): result = await async_function() assert result == expected ```
在 GitHub 查看