首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在‘`python setup.py测试’中运行setup.py和指针

如何在‘`python setup.py测试’中运行setup.py和指针
EN

Stack Overflow用户
提问于 2016-02-06 09:54:13
回答 3查看 1.6K关注 0票数 7

我有一个带有setup.py文件的项目。我使用pytest作为测试框架,并在代码上运行各种指针(pep8pylintpydocstylepyflakes等)。我使用tox在多个Python版本中运行这些代码,并使用Sphinx构建文档。

我想用python setup.py test任务运行我的测试套件以及源代码上的指针。如果我做到了这一点,那么我将只使用python setup.py test作为在tox.ini文件中运行测试的命令。

所以我的问题是:

  1. 使用python setup.py test执行这些操作是否合理/良好?或者我应该为此使用其他工具,比如直接用tox编写这些命令。
  2. 如何让setup.pytest任务中执行这些操作?

我知道py.testsetup.py test的集成说明(这里是:http://pytest.org/latest/goodpractices.html#integrating-with-setuptools-python-setup-py-test-pytest-runner),但是我正在寻找一个更“任意的CLI命令”路径,因为我想运行几个工具。

EN

回答 3

Stack Overflow用户

发布于 2016-02-06 11:10:08

1.我个人更喜欢用于这些任务,因为

  • 它还将检查您的deps安装是否正确(在所有py-版本上)。
  • 它可以用多个python版本(virtualenv)测试代码。

使用您的设置(因为您已经在使用毒性测试),我没有看到编写python setup.py test而不是确切的测试命令到您的tox.ini中的好处,因为它只会增加一些复杂的内容(新用户/贡献者必须搜索两个文件(tox.inisetup.py)来获取运行的测试/工具,而不是一个(tox.ini) )。

2.

若要使用此命令,您的项目的测试必须通过函数、TestCase类或方法或包含TestCase类的模块或包包装在一个单元测试套件中。

setuptools#test

票数 2
EN

Stack Overflow用户

发布于 2016-03-30 15:32:21

如何让setup.py testtox的事情

代码语言:javascript
复制
import sys
import os

if sys.argv[-1] == 'test':
    try:
        import tox
    except ImportError:
        raise ImportError('You should install `tox` before run `test`')
    sys.exit(os.system('tox'))

看上去不太好,但你说得有道理。使用tox.ini配置测试环境和运行程序(如flake8coverage等)因为tox擅长这样的事情。

票数 1
EN

Stack Overflow用户

发布于 2018-05-05 02:47:48

您可以向setup.py文件添加更多自定义命令,如下所示:

代码语言:javascript
复制
class FooCommand(distutils.cmd.Command):
    ...

setup(
    cmdclass={
        'foo': FooCommand,
    }
)

但是,请注意,您可以使用一组命令,并且可以包括一些运行程序。

代码语言:javascript
复制
setup(
    setup_requires=['pytest-runner'] # gives you a new pytest command
)

通过运行python setup.py --help-commands查找

代码语言:javascript
复制
Extra commands:
  ...
  pytest            run unit tests after in-place build
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35239628

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档