Я прочитал, что unit-test - это блестящая функция для написания лучшего кода и утверждение о том, что функции некоторых целевых кодов остаются неизменными. Поэтому я хотел использовать его ...Ошибка при использовании учебника pytest
Я использую Anaconda на своей машине Linux.
Я начал использовать pytest
, выполнив руководство для начинающего руководства on their homepage. После успешной установки появляется первый (непреднамеренная) ошибка:
[email protected]:~$ py.test
================================================== test session starts ===================================================
platform linux2 -- Python 2.7.8 -- py-1.4.25 -- pytest-2.6.3
collected 0 items/1 errors
========================================================= ERRORS =========================================================
___________________________________________________ ERROR collecting . ___________________________________________________
anaconda/lib/python2.7/site-packages/py/_path/common.py:331: in visit
for x in Visitor(fil, rec, ignore, bf, sort).gen(self):
anaconda/lib/python2.7/site-packages/py/_path/common.py:377: in gen
for p in self.gen(subdir):
anaconda/lib/python2.7/site-packages/py/_path/common.py:377: in gen
for p in self.gen(subdir):
anaconda/lib/python2.7/site-packages/py/_path/common.py:377: in gen
for p in self.gen(subdir):
anaconda/lib/python2.7/site-packages/py/_path/common.py:377: in gen
for p in self.gen(subdir):
anaconda/lib/python2.7/site-packages/py/_path/common.py:367: in gen
if p.check(dir=1) and (rec is None or rec(p))])
anaconda/lib/python2.7/site-packages/_pytest/main.py:628: in _recurse
ihook.pytest_collect_directory(path=path, parent=self)
anaconda/lib/python2.7/site-packages/_pytest/main.py:166: in call_matching_hooks
plugins = self.config._getmatchingplugins(self.fspath)
anaconda/lib/python2.7/site-packages/_pytest/config.py:688: in _getmatchingplugins
plugins += self._conftest.getconftestmodules(fspath)
anaconda/lib/python2.7/site-packages/_pytest/config.py:521: in getconftestmodules
mod = self.importconftest(conftestpath)
anaconda/lib/python2.7/site-packages/_pytest/config.py:554: in importconftest
self._onimport(mod)
anaconda/lib/python2.7/site-packages/_pytest/config.py:674: in _onimportconftest
self.pluginmanager.consider_conftest(conftestmodule)
anaconda/lib/python2.7/site-packages/_pytest/core.py:201: in consider_conftest
if self.register(conftestmodule, name=conftestmodule.__file__):
anaconda/lib/python2.7/site-packages/_pytest/core.py:100: in register
reg(plugin, name)
anaconda/lib/python2.7/site-packages/_pytest/config.py:613: in _register_plugin
call_plugin(plugin, "pytest_configure", {'config': self})
anaconda/lib/python2.7/site-packages/_pytest/core.py:265: in call_plugin
kwargs=kwargs, firstresult=True).execute()
anaconda/lib/python2.7/site-packages/_pytest/core.py:315: in execute
res = method(**kwargs)
anaconda/lib/python2.7/site-packages/astropy/tests/pytest_plugins.py:78: in pytest_configure
if not config.getoption('remote_data'):
anaconda/lib/python2.7/site-packages/_pytest/config.py:836: in getoption
raise ValueError("no option named %r" % (name,))
E ValueError: no option named u'remote_data'
DO *NOT* COMMIT!
================================================ 1 error in 2.77 seconds =================================================
Я хотел бы понять, где эта глупая ошибка приходит и как я могу решить. Является ли проблема с выполнением программы py.test
без имени файла и что нет файла с именем __init.py__
? OK Я чувствую себя действительно глупо, задавая этот вопрос, но, пожалуйста, серьёзно задайте вопрос, так как я не нашел никакого намека на всемирную паутину.
Это похоже на взаимодействие какого-то плагина Astropy pytest с тестовой средой. Я не уверен, как это автоматически открывается, но это не только вы. – josePhoenix
Проверьте, есть ли у вас 'conftest.py', который импортирует плагины astropy. Так было в моем проекте. – josePhoenix
Спасибо, что решили мою проблему ... – strpeter