Behave是用于Python中行为驱动开发的一个很好的工具。然而,与PyDev结合我有两个问题:
@given
,@when
和@then
注释。这可能发生是因为行为在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分析。
有任何建议如何解决这个问题?
答案 0 :(得分:0)
只是一个猜测。您是否尝试过导入重新定义?
from behave import given as given_behaviour, when as when_behaviour, then as then_behaviour
@given_behaviour('I navigate to Google')
您还可以查看日食设置:菜单窗口 - >偏好 - > PyDev - >口译员 - > Python口译员。有时,如果在配置解释器之后添加了新的库以便在eclipse中包含System PYTHONPATH
中的那些库,则删除并重新添加python解释器可能会有所帮助。
尝试将#@
后跟camel case中的消息添加到方法名称的末尾,以关闭PyDev中的警告消息。类似的东西:
def step(context): #@DuplicatedSignature