pdb断点的pytest命令行选项

pytest-pdb-break的Python项目详细描述


这有助于帮助text编辑器启动调试器并快速前进 让人感兴趣。如果您已经有一个可靠的工作流 breakpoint()片段和/或--trace--pdb选项,有 这里没什么可看的。

This basically does …

$ pytest --trace spam.py::test_foo
...
(pdb) until 42

or …

deftest_foo():...pytest.set_trace(header="line 42")

with a few minor conveniences sprinkled in

Simpatico检查
  1. 你更喜欢一种无创的,一键式的,随身携带的方法来进入 调试器
  2. 您喜欢上面第二个示例提供的停止的确定性
  3. 您喜欢变量和属性的制表符完成方式
  4. 你想要在unittest.TestCases和你自己的装置里 (实验性)
不要安装
与正确的pytest插件不同,它不是作为python安装的 包裹。编辑器将通过 PYTHONPATH,但仅在使用中(不需要Internet连接)。
在制品
注意事项
  1. 不幸的是,这个东西只有在linux上试过/测试过

  2. 它主要是为了它的作者来学习PyTesta,一个体面的人。 对其的理解仍在逃避

  3. 它不支持-m pytest风格的调用,这意味着 工作目录没有隐式地添加到sys.path

  4. Actually,更像是…

    $echountil42 > .pdbrc
    $ pytest --trace spam.py::test_foo; rm -f .pdbrc
    ========================== test session starts ==========================
    ...
     > /repo/spam.py(42)test_foo()
    -> assert True  # line 42
    (pdb) _

    或者…

    $ cp spam.py spam.py~
    $ sed -i -E \
    >   '42{h;s/^(\s+)(.*)$/\1import pytest; pytest.set_trace()/p;g}'\
    >   spam.py
    $ pytest spam.py::test_foo; mv -f spam.py~ spam.py
    ========================== test session starts ==========================
    ...
     > /repo/spam.py(43)test_foo()
    -> assert True  # line 42
    (pdb) _

    (假设目标行以新语句打开)

  5. 当黑客攻击主pytest插件时,忽略上面的命令 以及do install

    (.venv)repo@master$ pip install -e .
    

    如果坚持包含的引用集成,一些额外的 可能需要欺骗。例如:

    • 通过其中一个文档选项禁用“独立库”创建
    • 手动管理编辑器插件(或使其与您的 经理)

    如果做你自己的事,通常的规则是适用的,比如确保正确的 调用Pytest时,exec path和env vars具有优先权:

    constpytest=pty.spawn('pytest',['--break=spam.py:42',nodeid],{cwd:rootdir,env:Object.assign({},process.env,modified)});// or whatever
待办事项
  1. 外部帮助程序返回--optionslist
  2. asyncio

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java与Groovy正则表达式匹配混淆   java控制台未定义为JSNI   主目录中的java指针异常   java如何获取hashmap中的arrayList的大小   ApachePOI用于文本,Java代码中的word doc(.docx)中没有进行追加   Ruby对象到Java对象   JavaSpringJPA哈希集只返回一个值   Java在执行由配置了精确类路径参数的mavenjarpluin生成的可执行jar时无法找到依赖项   java我试图在画布上写一个文本,但什么也没发生   java HTTP 404源服务器找不到目标资源的当前表示形式,或者不愿意透露存在该表示形式。不起作用   java提取小数点后的最后一个数字   oop Java:无法访问对象的元素   PHP URL中RecyclerView中的java句柄空异常   不调用OnCreateViewHolder的java Update RecyclerView适配器项