所以我在处理鼻子插件方面非常棒.
我一直在搜索很多,但关于鼻塞的文档似乎很少.
我阅读并尝试了以下链接中的内容,尝试编写一个简单的鼻子插件
并使用nosetests运行它,但没有成功:
> https://nose.readthedocs.org/en/latest/doc_tests/test_init_plugin/init_plugin.html
> https://nose.readthedocs.org/en/latest/plugins/writing.html
我不想编写自己的测试运行器或从任何其他脚本运行测试(通过运行(argv = argv,suite = suite(),…)),
就像他们在第一个链接中所做的那样
我用类似这样的类写了一个文件myplugin.py:
@H_301_17@import os
from nose.plugins import Plugin
class MyCustomPlugin(Plugin):
name = 'myplugin'
def options(self,parser,env=os.environ):
parser.add_option('--custom-path',action='store',dest='custom_path',default=None,help='Specify path to widget config file')
def configure(self,options,conf):
if options.custom_path:
self.make_some_configs(options.custom_path)
self.enabled = True
def make_some_configs(self,path):
# do some stuff based on the given path
def begin(self):
print 'Maybe print some useful stuff...'
# do some more stuff
并添加了一个像这样的setup.py:
@H_301_17@try:
from setuptools import setup,find_packages
except ImportError:
import distribute_setup
distribute_setup.use_setuptools()
from setuptools import setup,find_packages
setup(
name='mypackage',...
install_requires=['nose==1.3.0'],py_modules=['myplugin'],entry_points={
'nose.plugins.1.3.0': [
'myplugin = myplugin:MyCustomPlugin'
]
}
)
两个文件都在同一目录中.
每次我运行nosetests –custom-path [path],我得到:
@H_301_17@nosetests: error: no such option: --custom-path
从上面提到的链接,我认为这是注册和启用自定义插件所需的全部内容.
但看起来,无论是我做错了什么,还是鼻子的文档已经过时了.
有人可以指出我注册和启用插件的正确方法,我可以使用nosetests吗?
非常感谢!! 原文链接:https://www.f2er.com/python/439665.html