为当前单元格运行pytest的ipython扩展。

ipython_pytest的Python项目详细描述


ipython_pytest

这个小小的ipython扩展使您能够 在ipython笔记本中使用pytest运行测试。

延期的动机是为了 在ipython中演示使用pytest的测试驱动开发 笔记本驱动的演示。

此扩展不尝试启用将笔记本用作测试 套房。其目的也不是从 多个单元格,但要对 互动演示。

此扩展尝试为pytest实现 ipython_nose扩展为nose。不幸的是它不能 将笔记本环境中的全局参数注入测试,如 %%nosecell magic in ipython_nose。相反,在 ipython_pytest,所有导入、常量和帮助函数都需要 包含在测试单元本身中。

安装

  • 确保您的ipython笔记本服务器可以导入ipython_pytest.py(例如。 将其复制到PYTHONPATH中的目录,或修改PYTHONPATH 在启动ipython笔记本之前)。可能也足够 ipython_pytest.py在运行笔记本的目录中,例如:

    $ ls
    ipython_pytest.py
    $ ipython notebook
    
  • 您也可以在developent模式下的virtualenv中安装它:

    $ cd ipython-pytest
    $ pip install -e .
    

用法

  • 添加包含以下内容的单元格:

    %load_ext ipython_pytest
    

    在你笔记本的某个地方。

  • 编写符合pytest约定的测试,例如:

    def test_arithmetic():
        assert 1+1 == 2
    
  • 添加包含以下内容的单元格:

    %%pytest
    
    def test_my_stuff():
        assert 42 == 42
    

    到你的笔记本上运行那个手机。会发现你的 test_*函数,运行它们,并显示控制台输出 皮特斯特。

  • 向magic传递标准pytest参数:

    %%pytest --tb=short
    

注意事项

  • 笔记本其他单元格中定义的对象都不可用 在测试室里。

作者

  • antti kaihola<;antti dot kaihola at eniram dot fi>;

其他类似工具

感谢taavi burns在他的ipython_nose包中提出的想法。

christopher prohm已经创建了用于运行pytest和 在ipython笔记本中进行单元测试。

获取代码

git clone https://github.com/akaihola/ipython_pytest.git

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

推荐PyPI第三方库


热门话题
如何在java中模拟按键?   尽管元素存在,但HtmlUnit中的java ElementNotFoundException   在Java中,长双精度并发写入不是原子的吗?   java如何在另一个对象数组中打印对象的int值?   java在显示或更改视图后执行一些代码   java JFR:读取时发生OutOfMemoryError。jfr文件   java Android助手检查是否购买   java这种设计模式的好处是什么?   Weblogic 10.3中针对托管服务器的java部署问题   java如何获取字符串。在编译时投诉的格式   声明字符串数组时发生java错误   java JPA在多个并行线程中从表中删除时发生死锁   java Android:在按钮动画之后启动活动   java并发与JMS主题在春季   使用Lucene spatial search/DateRangePrefixTree进行java日期范围查询?   java可选接口问题   JavaDbUnit没有在每个方法之后清洗和插入数据库,所以测试不是独立的   java在IAIK PKCS11包装器中一对私钥和证书如何匹配?