【pytest Debug】vscode 里让你按下F5就能执行 pytest并断点

pytest 从命令行执行时不能自动停留在断点处太麻烦了,
launch. json 中配置好调试器可解决:
首先,如果本地没有 launch.json 的话,增加一个调试配置:
在这里插入图片描述
然后进入 launch.json进行具体配置。
在 configuration 列表中增加一项:

{
            "name": "Python: Test current file",
            "type": "python",
            "request": "launch",
            "module":"pytest",
            "cwd":"${workspaceFolder}",
            "args": [
            "-v",
            "${file}"
            ],
            "console": "integratedTerminal"
            },

它指定了你执行 F5 时,vscode 会自动做哪些操作。
在这个配置中,它实际执行如下:

1、切换到${workspaceFolder}",也就是当前命令行默认的工作目录。
2、指定 python.exe 解释器的位置为默认,比如你切换到虚拟环境下,那么它就指定到虚拟环境的 python.exe
3、自动开启调试器,我机器上具体执行指令如下
%user%\\.vscode\\extensions\\ms-python.python-2023.6.1\\pythonFiles\\lib\\python\\debugpy\\adapter/../..\\debugpy\\launcher 38260:这是用于启动Python调试器的命令。它启动一个名为debugpy的Python调试器,并监听端口号38260,以便IDE(集成开发环境)可以连接到调试器进行调试。
4、执行 python -m pytest {args},其中 args 上面配置指定的。如果你要修改,就要往其中添加。比如 “-s、-x ”等参数。
5、${file} 指定的是当前 py 文件
配置好以后,先切换到我们的调试配置(由 name定义),再 F5 就好了。
在这里插入图片描述
在底下勾选你想要捕捉的error
勾选后面两个时,就会自动在触发bug时停下
在这里插入图片描述

附pytest 常用的 args:

选择和过滤测试:

-k EXPRESSION: 只运行名字匹配表达式的测试。例如,pytest -k test_my_function 仅运行名为 test_my_function 的测试。
--ignore=PATH: 忽略指定路径的测试。
运行控制:

-x, --exitfirst: 遇到第一个失败的测试时立即退出。
--maxfail=num: 遇到指定数量的失败测试后退出。
--last-failed: 仅运行上次失败的测试。
测试结果报告:

-v, --verbose: 输出更详细的结果。
-q, --quiet: 减少输出的详细程度。
--lf, --last-failed: 只运行上次失败的测试。
--tb=style: 跟踪回溯输出格式 (例如,short, long, no 等)。
并行运行测试:

通过 pytest-xdist 插件,你可以使用 -n 参数来并行运行测试:-n NUM 会并行运行测试,NUM 是并发线程数。
代码覆盖率:

使用 pytest-cov 插件,你可以加上 --cov=MODULE 参数来查看代码覆盖率报告。
插件和配置:

--durations=N: 列出最慢的N个测试。
-p no:PLUGIN: 禁用一个插件。
--fixtures: 显示可用的fixture。
--markers: 显示可用的标记。
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
本套课程系大喵在**2020年****录制课程,大喵将带着大家使用vscode这款轻量级编辑器神器,快速上手Python高效开发、调试及单元测试的插件扩展和 VSCode IDE环境配置;什么是 vscode 编辑器?Visual Studio Code(以下简称vscode)是一个轻量且强大的跨平台开源代码编辑器(IDE),支持Windows,Mac OS X和Linux。内置JavaScript、TypeScript和Node.js支持,而且拥有丰富的插件生态系统,可通过插件面板来方便快捷的安装插件来支持javascript、C++、C#、Python、PHP等其他语言。什么是 python ?Python,它是一门编程语言,截止到目前python已经广泛应用在:无人驾驶、个人助理、金融、电商、医疗、教育等各大领域。尤其是在 Web开发、自动化运维与测试、游戏服务器开发方面有着先天的优势。目前许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美国航空航天局)都大量地使用PythonVSCode + PythonVSCode毫无疑问是一款非常优秀的IDE,而Python则无疑是一门使用领域相当广泛,非常强大的高级语言;那我们如何把这两者结合起来,用**美的IDE编写最棒的语言,优雅与**,强强结合,气冲入虹,势不可挡。课程内容主要包括:01. 课程内容介绍02. VSCode IDE 介绍03. 为什么推荐使用 VSCode IDE 04. Python 语言基础介绍 05. 为什么选择 Python 语言06. VSCodePython 强强联手07. 课程插件扩展介绍08. Python扩展安装及介绍09. Python扩展代码测试10. AREPL安装和介绍11. AREPL for Python 特点介绍12. AREPL 代码功能测试13. autoDocstring 安装和介绍14. autoDocstring 代码测试使用15. python test explorer 安装和介绍16. Python pytest 测试和使用

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值