运行 jupyter notebook 中的 pytest 测试函数
Running pytest test functions inside a jupyter notebook
我正在做一个关于 python 测试选项的演示,我想演示的技术之一是 pytest。我打算用 jupyter/ipython 笔记本做演示。理想情况下,我希望能够在单元格中定义一个测试函数,然后使用 pytest 来 运行 只是那个函数;这样我就可以演示 pytest 等的各个功能
有现成的方法吗? None 我在 pytest api 中看到的交互功能似乎符合要求,但我肯定不是 pytest 专家。我很乐意编写一个插件来执行此操作,因此任何有关该方向最佳方法的建议都会很棒。
我确实看到了 pytest-ipynb,但它似乎不能满足我的需要。如果该评估是错误的,关于如何使用它的建议也很好。
我创建了 ipython_pytest for this purpose and used it in my PyCon Helsinki 2016 presentation。
您将像这样使用该工具:
%%pytest
def test_my_stuff():
assert 42 == 42
不幸的是,我找不到使笔记本中定义的函数和 类 可用于在测试单元中测试函数的方法。如果有人为此提出解决方案,我将不胜感激。
有一个类似的模块,看起来很成熟:https://github.com/chmp/ipytest
在@akaiola开发的模块中被引用,比较活跃,定期更新/维护。
这是来自 Github 存储库 (https://github.com/chmp/ipytest/blob/master/Example.ipynb)
的示例
还有我最近创建的另一个
这是我的 2 美分,因为我已经为自己解决了这个问题 2 次,并且两次都回到了这个网站。为了未来的自己:
对于按以下方式构建的项目
prod_folder:
* data
* code
* run_notebook.ipynb
* tests
* test_some_test.py
如果你想 运行 pytest 从 run_notebook.ipynb 下面的 cell-magic 工作出于我的目的:
!pytest ../tests
我正在做一个关于 python 测试选项的演示,我想演示的技术之一是 pytest。我打算用 jupyter/ipython 笔记本做演示。理想情况下,我希望能够在单元格中定义一个测试函数,然后使用 pytest 来 运行 只是那个函数;这样我就可以演示 pytest 等的各个功能
有现成的方法吗? None 我在 pytest api 中看到的交互功能似乎符合要求,但我肯定不是 pytest 专家。我很乐意编写一个插件来执行此操作,因此任何有关该方向最佳方法的建议都会很棒。
我确实看到了 pytest-ipynb,但它似乎不能满足我的需要。如果该评估是错误的,关于如何使用它的建议也很好。
我创建了 ipython_pytest for this purpose and used it in my PyCon Helsinki 2016 presentation。
您将像这样使用该工具:
%%pytest
def test_my_stuff():
assert 42 == 42
不幸的是,我找不到使笔记本中定义的函数和 类 可用于在测试单元中测试函数的方法。如果有人为此提出解决方案,我将不胜感激。
有一个类似的模块,看起来很成熟:https://github.com/chmp/ipytest
在@akaiola开发的模块中被引用,比较活跃,定期更新/维护。
这是来自 Github 存储库 (https://github.com/chmp/ipytest/blob/master/Example.ipynb)
的示例还有我最近创建的另一个
这是我的 2 美分,因为我已经为自己解决了这个问题 2 次,并且两次都回到了这个网站。为了未来的自己:
对于按以下方式构建的项目
prod_folder:
* data
* code
* run_notebook.ipynb
* tests
* test_some_test.py
如果你想 运行 pytest 从 run_notebook.ipynb 下面的 cell-magic 工作出于我的目的:
!pytest ../tests