【发布时间】:2012-06-07 20:46:39
【问题描述】:
我想做一些单元测试,所以我设置了一个列表,其中的值都应该被断言为真,就像this question。但我希望它在PyCharm 中运行(按下Alt+Shift+F10)
如果我只使用答案中的代码,我只会得到No tests were found
【问题讨论】:
标签: unit-testing python-2.7 pycharm
我想做一些单元测试,所以我设置了一个列表,其中的值都应该被断言为真,就像this question。但我希望它在PyCharm 中运行(按下Alt+Shift+F10)
如果我只使用答案中的代码,我只会得到No tests were found
【问题讨论】:
标签: unit-testing python-2.7 pycharm
您需要仔细检查测试运行配置的设置:
默认情况下,PyCharm 将检查以 test 开头并且是 unittest.TestCase 的子类的文件,但是您可以控制 Pattern 和子类选项。
根据你的测试文件名改变Pattern,它接受Python正则表达式。
【讨论】:
请注意,PyCharm 将仅检查从 unittest.TestCase 继承的类,因此您应该在从 unittest.TestCase 继承的类中编写测试
【讨论】:
py.test,它不需要任何测试类来扩展 unittest.TestCase(py.test 承诺没有 API)
首先,创建一个名为 pytest.ini 的文件以设置自定义配置。例如,默认情况下,pytest 会将任何与 test_*.py 和 *_test.py glob 匹配的文件视为测试模块,因此我鼓励使用此文件来定义您的自定义文件名模式。
pytest.ini
[pytest]
python_files = test_*.py tests.py *_test.py
现在,打开运行/配置窗口:
添加新配置,选择 Python 测试和 pytest:
在以下窗口中,您可以为配置选择一个名称,也可以选择目标,但如果您希望 pytest 使用pytest.ini 文件,请不要选择脚本路径、应用和确定。
最后,点击播放按钮运行测试。
【讨论】: