使用PyDev开发行为步骤
Behave 是一个很棒的工具,用于在 Python 中进行行为驱动开发。不过,我在和 PyDev 一起使用时遇到了两个问题:
- PyDev 无法识别 behave 的
@given
、@when
和@then
注解。这可能是因为 behave 在behave
包中做了一些命名上的处理。 behave 建议把所有方法都命名为
step
,因为每个方法都有一个注解来定义“真实”的名字。PyDev 对这些“重复”的方法表示不满。举个例子:
from behave import given, when, then @given('I navigate to Google') def step(context): # ... @when('I enter coffee into the search field') def step(context): # ...
现在,我通过在代码中加上 #@PydevCodeAnalysisIgnore
来绕过这两个问题,这样就关闭了 PyDev 的分析功能。我希望能在代码的其他部分保留 PyDev 的分析。
有没有什么建议可以解决这个问题呢?
1 个回答
0
这只是个猜测。你试过重新导入定义吗?
from behave import given as given_behaviour, when as when_behaviour, then as then_behaviour @given_behaviour('I navigate to Google')
你也可以检查一下Eclipse的设置:在菜单中选择窗口 -> 首选项 -> PyDev -> 解释器 -> Python解释器。有时候,如果在配置了解释器后添加了新的库,删除再重新添加Python解释器可能会有帮助,这样可以把新的库包含在Eclipse的系统
PYTHONPATH
中。试着在方法名的末尾加上
#@
,后面跟着用驼峰命名法写的信息,这样可以关闭PyDev中的警告信息。比如:def step(context): #@DuplicatedSignature