Pytest框架测试用例规则和运行方式

简介: Pytest框架测试用例规则:模块名:必须以 test_开头 或者 _test结尾;测试类:必须以 Test开头,并且不能有init方法;测试方法:必须以 test开头。Pytest框架测试运行模式:主函数模式、命令行模式、通过读取配置文件pytest.ini运行。。。

目录

一、默认的测试用例规则

二、测试用例执行顺序

三、测试用例运行方式

3.1.主函数模式

3.1.1.主函数模式:4种运行方式

3.1.2.文件框架如下图

3.2.命令行模式

3.2.1.命令行模式:4种运行方式

3.2.2.第2种运行方式框架

3.3.通过读取配置文件pytest.ini运行

3.3.1.pytest.ini 文件注意事项

3.3.2.pytest.ini 文件释义

3.3.3.pytest.ini文件源码


一、默认的测试用例规则

1.1.模块名【test_login】:必须以 test_开头 或者 _test结尾

1.2.测试类【Testlogin】:必须以 Test开头,并且不能有init方法

1.3.测试方法【test_01_baili】:必须以 test开头

1.4.所有的包 package 必须要有__init__.py 文件


image.gif编辑

二、测试用例执行顺序

unittest:按ASCII码的大小来绝对的执行顺序

pytest:默认从上到下

改变用例默认的执行顺序:使用mark标记

三、测试用例运行方式

运行参数含义详情见:Pytest框架运行常用参数解析_沫沫18S的博客-CSDN博客

3.1.主函数模式

if __name__ == '__main__':
    pytest.main(['-vs','-m smoke','test_01_baili'])

image.gif

3.1.1.主函数模式:4种运行方式

#1.运行所有

pytest.main()

#2.指定模块[文件]

pytest.main(['-vs','test_login.py'])

#3.指定目录文件夹

pytest.main(['-vs','./interface_testcase'])

#4.指定目录文件夹2;通过nodeid指定用例运行:nodeid由模块名,分隔符,类名,方法名,函数名组成

  执行函数:无类名

pytest.main(['-vs', './interface_testcase/test_interface.py::test_01_func'])

  执行方法

pytest.main(['-vs', './interface_testcase/test_interface.py::TestInterface::test_01'])

3.1.2.文件框架如下图

image.gif编辑

3.2.命令行模式

3.2.1.命令行模式:4种运行方式

#1.运行所有文件:

pytest

#2.执行某个文件的【冒烟】用例;-m后也可以使用表达式,在标记之间添加and,or,not关键字

pytest -vs test_login.py

pytest -v -m smoke test_login.py

#3.指定目录文件夹

pytest -vs ./interface_testcase

#4.指定目录文件夹2;通过nodeid指定用例运行:nodeid由模块名,分隔符,类名,方法名,函数名组成

  执行函数:无类名

pytest -vs ./interface_testcase/test_interface.py::test_01_func

  执行方法

pytest -vs ./interface_testcase/test_interface.py::TestInterface::test_01

3.2.2.第2种运行方式框架

image.gif编辑

备注:第4种运行方式框架,同主函数模式的

3.3.通过读取配置文件pytest.ini运行

3.3.1.pytest.ini 文件注意事项

pytest.ini 一般在企业自动化测试落地中使用的方式,也是pytest单元测试框架的核心配置文件

    1. 位置:一般放在项目的根目录;
    2. 名字:必须是 pytest.ini
    3. 编码格式:必须是 ANSI,可以使用notpad++修改编码格式
    4. 作用:可以改变pytest默认的测试用例规则
    5. 运行规则:不管是主函数的模式运行,命令行模式运行,都会去读取pytest.ini这个配置文件image.gif编辑

    3.3.2.pytest.ini 文件释义

    注意:含中文执行时会报错 ,去掉所有中文后,可以使用notpad++修改编码格式

    image.gif编辑

    3.3.3.pytest.ini文件源码

    [pytest]
    addopts = -vs -m "smkoe"
    testpaths = ./testcase/
    python_files = test_*.py
    python_classes = test*
    python_functions = test

    image.gif

    备注:修改【pytest.ini文件源码 】模块名、类名、方法名的命名规则,对应模块、类、方法的名字也需要跟着pytest.ini的规则修改

    目录
    相关文章
    |
    3月前
    |
    人工智能 测试技术 调度
    写用例写到怀疑人生?AI 智能测试平台帮你一键生成!
    霍格沃兹测试开发学社推出AI智能测试用例生成功能,结合需求文档一键生成高质量测试用例,大幅提升效率,减少重复劳动。支持自定义提示词、多文档分析与批量管理,助力测试人员高效完成测试设计,释放更多时间投入核心分析工作。平台已开放内测,欢迎体验!
    |
    4月前
    |
    Web App开发 人工智能 JavaScript
    主流自动化测试框架的技术解析与实战指南
    本内容深入解析主流测试框架Playwright、Selenium与Cypress的核心架构与适用场景,对比其在SPA测试、CI/CD、跨浏览器兼容性等方面的表现。同时探讨Playwright在AI增强测试、录制回放、企业部署等领域的实战优势,以及Selenium在老旧系统和IE兼容性中的坚守场景。结合六大典型场景,提供技术选型决策指南,并展望AI赋能下的未来测试体系。
    |
    2月前
    |
    SQL 安全 Linux
    Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
    Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
    154 1
    Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
    |
    2月前
    |
    Linux 网络安全 iOS开发
    Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
    Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
    205 1
    Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
    |
    3月前
    |
    安全 Linux 网络安全
    Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架
    Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架
    306 2
    Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架
    |
    3月前
    |
    Linux 网络安全 iOS开发
    Metasploit Framework 6.4.90 (macOS, Linux, Windows) - 开源渗透测试框架
    Metasploit Framework 6.4.90 (macOS, Linux, Windows) - 开源渗透测试框架
    411 1
    Metasploit Framework 6.4.90 (macOS, Linux, Windows) - 开源渗透测试框架
    |
    2月前
    |
    人工智能 自然语言处理 测试技术
    让AI帮你跑用例-重复执行,不该成为测试工程师的主旋律
    测试不该止步于重复执行。测吧科技推出用例自动执行智能体,通过AI理解自然语言用例,动态规划路径、自主操作工具、自动重试并生成报告,让测试工程师从“点点点”中解放,专注质量思考与创新,提升效率3倍以上,节约人力超50%,重构测试生产力。
    |
    3月前
    |
    安全 Linux 网络安全
    Metasploit Framework 6.4.88 (macOS, Linux, Windows) - 开源渗透测试框架
    Metasploit Framework 6.4.88 (macOS, Linux, Windows) - 开源渗透测试框架
    575 0
    |
    3月前
    |
    缓存 安全 Linux
    Metasploit Pro 4.22.8-2025082101 (Linux, Windows) - 专业渗透测试框架
    Metasploit Pro 4.22.8-2025082101 (Linux, Windows) - 专业渗透测试框架
    186 0
    |
    4月前
    |
    SQL 安全 Linux
    Metasploit Pro 4.22.8-2025073001 (Linux, Windows) - 专业渗透测试框架
    Metasploit Pro 4.22.8-2025073001 (Linux, Windows) - 专业渗透测试框架
    178 0