python - 让 `python setup.py test` 语法起作用?

标签 python unit-testing distutils setup.py python-unittest

如何让 python setup.py test 工作? - 当前输出:

$ python setup.py test  # also tried: `python setup.py tests`
/usr/lib/python2.7/distutils/dist.py:267: \
                           UserWarning: Unknown distribution option: 'test_suite'
  warnings.warn(msg)
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help

error: invalid command 'test'

proj_name/setup.py

from distutils.core import setup

if __name__ == '__main__':
    setup(name='foo', version='0.1', package_dir={'foo': 'utils'},
          test_suite='tests')

proj_name/tests/foo_test.py

from unittest import TestCase, main as unittest_main


class TestTests(TestCase):
    def setUp(self):
        pass

    def test_foo(self):
        self.assertTrue(True)
        self.assertFalse(False)


if __name__ == '__main__':
    unittest_main()

最佳答案

test_suitesetuptools 的一项功能.用它替换 distutils:

from setuptools import setup

关于python - 让 `python setup.py test` 语法起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21250389/

相关文章:

javascript - 单元测试 Angular 时 "angualar.module"和 "module"之间的区别

java - 使用方法级注释测试 Spring 服务的好方法

java - 无法从我的 JUnit 测试中设置集群 Vert.x 环境

Python/C++ 绑定(bind),如何将静态 C++ 库 (portaudio) 与 distutils 链接起来?

python - 调整 turtle 屏幕大小和保存时出现问题

python - 如何使用任意长度的键更新 python 字典?

Python-如何使用不带引号的 csv.writer

python - 如何从 Selenium 处理 Shadow DOM 中的元素

python - 运行 python setup.py install 时强制编译

python - 如何获取 distutils 用于构建的 arch 字符串?