我正在使用Behave(Python的BDD),一直尝试启用JUnit输出但没有成功。故障排除后,我意识到只有在使用Python 3.4时才会收到以下错误消息:
当我将我的项目更新为使用Python 2.7时,一切都正常。
这里有一个重要的注意事项:只有在启用
如果您知道任何能够使此代码适用于Python 3.4的方法,我会非常感激。谢谢。
/Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 "/Users/myusername/Documents/Programming/Selenium Programming/GMail Project/GMailTests.py"
Traceback (most recent call last):
File "/Users/myusername/Documents/Programming/Selenium Programming/GMail Project/GMailTests.py", line 62, in <module>
config = Configuration()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/behave/configuration.py", line 481, in __init__
load_configuration(self.defaults, verbose=verbose)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/behave/configuration.py", line 394, in load_configuration
defaults.update(read_configuration(filename))
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/behave/configuration.py", line 348, in read_configuration
result[dest] = cfg.get('behave', dest, use_raw_value)
TypeError: get() takes 3 positional arguments but 4 were given
当我将我的项目更新为使用Python 2.7时,一切都正常。
这里有一个重要的注意事项:只有在启用
behave.ini
配置文件中的JUnit输出时才会出问题。如果我从配置中删除下面的两行,一切都会很好。不幸的是,我需要为我的项目启用JUnit输出:[behave]
junit=true
junit_directory=./JunitReports
如果您知道任何能够使此代码适用于Python 3.4的方法,我会非常感激。谢谢。