Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
运行Python 3 unittest时引发的AttributeError_Python_Linux_Unit Testing_Python 3.x - Fatal编程技术网

运行Python 3 unittest时引发的AttributeError

运行Python 3 unittest时引发的AttributeError,python,linux,unit-testing,python-3.x,Python,Linux,Unit Testing,Python 3.x,我试图运行以下python命令来启动unittest,但在我的Linux环境中失败了。然而,同样的命令在我的Windows环境中运行良好。我想不出哪里出了问题。有什么建议吗? 请注意,“persistence”是一个python包,“PersistenceAcceptanceTest.py”是“persistence”下的一个python文件 $/opt/python-3.4.3/bin/python3.4-m unittest persistence.PersistenceAcceptance

我试图运行以下python命令来启动unittest,但在我的Linux环境中失败了。然而,同样的命令在我的Windows环境中运行良好。我想不出哪里出了问题。有什么建议吗? 请注意,“persistence”是一个python包,“PersistenceAcceptanceTest.py”是“persistence”下的一个python文件

$/opt/python-3.4.3/bin/python3.4-m unittest persistence.PersistenceAcceptanceTest-v
回溯(最近一次呼叫最后一次):
文件“/opt/python-3.4.3/lib/python3.4/runpy.py”,第170行,在运行模块中
“\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
文件“/opt/python-3.4.3/lib/python3.4/runpy.py”,第85行,在运行代码中
exec(代码、运行\全局)
文件“/opt/python-3.4.3/lib/python3.4/unittest/_main__.py”,第18行,在
主(模块=无)
文件“/opt/python-3.4.3/lib/python3.4/unittest/main.py”,第92行,在__
self.parseArgs(argv)
文件“/opt/python-3.4.3/lib/python3.4/unittest/main.py”,第139行,在parseArgs中
self.createTests()
文件“/opt/python-3.4.3/lib/python3.4/unittest/main.py”,第146行,在createTests中
自我保护模块)
loadTestsFromNames中的第146行文件“/opt/python-3.4.3/lib/python3.4/unittest/loader.py”
suites=[self.loadTestsFromName(name,module)表示名称中的名称]
文件“/opt/python-3.4.3/lib/python3.4/unittest/loader.py”,第146行,在
suites=[self.loadTestsFromName(name,module)表示名称中的名称]
loadTestsFromName中的第114行文件“/opt/python-3.4.3/lib/python3.4/unittest/loader.py”
父对象,obj=obj,getattr(obj,零件)
AttributeError:“模块”对象没有属性“PersistenceAcceptanceTest”

您的.py文件名是什么?如果使用与模块相同的名称,则可能会导致属性错误“PersistenceAcceptanceTest.py”是文件名,它(只有)一个类继承自“unittest.TestCase”,并且该文件中有一行内容为:if name=='main':unittest.main()在“name”和“main”之前和之后都有下划线。上面没有显示它们。我并不想怀疑您,但您确定存在“persistenceAcceptenceTest.py”文件吗?可能值得在python中浏览文件libraries@NaiteJu您可以在注释中使用
`main
来添加语法突出显示(并且不会丢失您的
\
)。
    $ /opt/python-3.4.3/bin/python3.4 -m unittest persistence.PersistenceAcceptanceTest -v
Traceback (most recent call last):
  File "/opt/python-3.4.3/lib/python3.4/runpy.py", line 170, in _run_module_as_main
    "__main__", mod_spec)
  File "/opt/python-3.4.3/lib/python3.4/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/opt/python-3.4.3/lib/python3.4/unittest/__main__.py", line 18, in <module>
    main(module=None)
  File "/opt/python-3.4.3/lib/python3.4/unittest/main.py", line 92, in __init__
    self.parseArgs(argv)
  File "/opt/python-3.4.3/lib/python3.4/unittest/main.py", line 139, in parseArgs
    self.createTests()
  File "/opt/python-3.4.3/lib/python3.4/unittest/main.py", line 146, in createTests
    self.module)
  File "/opt/python-3.4.3/lib/python3.4/unittest/loader.py", line 146, in loadTestsFromNames
    suites = [self.loadTestsFromName(name, module) for name in names]
  File "/opt/python-3.4.3/lib/python3.4/unittest/loader.py", line 146, in <listcomp>
    suites = [self.loadTestsFromName(name, module) for name in names]
  File "/opt/python-3.4.3/lib/python3.4/unittest/loader.py", line 114, in loadTestsFromName
    parent, obj = obj, getattr(obj, part)
AttributeError: 'module' object has no attribute 'PersistenceAcceptanceTest'