我有以下类文件和相应的测试文件
目录.py:
import os
class Dir:
def __init__(self, path=''):
self.path = path
@property
def path(self):
return self._path
@path.setter
def path(self, path):
abspath = os.path.abspath(path)
if abspath.exists():
self._path = path
else:
raise IOError(f'{path} does not exist')
Run Code Online (Sandbox Code Playgroud)
和dir_test.py:
import unittest
from ..dir import Dir
class TestDir(unittest.TestCase):
def IOErrorIfPathNotExists(self):
with self.assertRaises(IOError):
Dir.path = "~/invalidpath/"
with self.assertRaises(IOError):
Dir('~/invalidpath/')
if __name__ == "__main__":
unittest.main()
Run Code Online (Sandbox Code Playgroud)
但当我跑步时
pytest -x dir_test.py
Run Code Online (Sandbox Code Playgroud)
它只是打印no tests ran in 0.01 seconds
我不知道为什么。这是我第一次使用 pytest,除了exercism.io的练习之外,我看不出他们的测试文件有任何区别。
我在虚拟环境(Python 3.6.5)中运行它,pytest并pytest-cache通过pip.
| 归档时间: |
|
| 查看次数: |
6067 次 |
| 最近记录: |