behave HOOK Error empty dict 来自 behave.ini

behave HOOK Error empty dict from behave.ini

我在 before_all 中收到错误 HOOK-ERROR: KeyError: 'environment' 当 运行ning 从命令行运行时

项目结构:

features/ * all feature files go here
features/steps * all steps go here
features/environment.py

behave.ini(项目级别)

 [behave.userdata]
 environment = int

environment.py

def before_all(context):
   userdata = context.config.userdata
   print(userdata)
   print(userdata['environment'])

输出

{}
HOOK-ERROR in before_all: KeyError: 'environment'

在站点注释中,如果我 运行 使用 pycharm 的功能文件,我不会收到此错误并且打印出环境。行为 v1.2.6

任何帮助将不胜感激

我尝试将 behave.ini 移动到 features/ 目录,当我从 features/ 目录 运行 Behave 时,我能够访问 userdata['environment']

这应该可以解决您的问题:

x = context.config.userdata.get('environment')