pytest基础模板第一步是导入pytest和待测模块,第二步定义test_开头函数并用assert验证返回值,第三步运行pytest命令自动发现执行;带setup/teardown逻辑可用@pytest.fixture(scope="function")实现初始化与清理,避免状态污染。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要快速生成符合项目规范的单元测试代码模板,避免每次从零开始写断言、测试夹具和测试用例结构。
Python pytest基础模板
第一步:在测试文件顶部导入pytest和待测模块。
第二步:定义一个以test_开头的函数,内部调用被测函数并用assert验证返回值。
第三步:运行pytest命令,自动发现并执行该函数——pytest会把所有test_*.py里以test_开头的函数当作测试用例。
这一步操作起来很简单,直接把文件拖进去就行。注意函数名必须以test_开头,否则pytest默认不识别。
带setUp/tearDown逻辑的模板(unittest风格)
方法一:使用unittest.TestCase基类
import unittest → 在类中定义setUp方法初始化测试资源 → 编写test_*命名的实例方法 → 可选定义tearDown清理资源 → 运行python -m unittest test_module.py。
方法二:用pytest.fixture替代setUp/tearDown
@pytest.fixture(scope="function") → 在函数内完成初始化 → yield返回资源 → yield后代码自动作为teardown执行 → 在测试函数参数中声明该fixture名即可注入。
【scope="function"是默认值,若误写成scope="session",多个测试会共享同一份资源,导致状态污染】
Java JUnit 5模板
① 添加@Test注解到无参public void方法上。
② 使用@BeforeEach标注初始化方法,@AfterEach标注清理方法——这两个方法会在每个@Test前后各执行一次。
③ 断言统一用org.junit.jupiter.api.Assertions中的静态方法,如assertEquals(expected, actual)。
④ 测试类无需继承任何基类,也不需要main方法;IDE或Maven执行时自动识别@Test注解。
JUnit 5不再支持@Test(expected = Exception.class)这种写法,改用assertThrows(() -> method(), Exception.class)。











