Behave 简明教程
Behave - Step Parameters
我们可以在步骤名称中使用参数。这些参数可以通过正则表达式或默认解析器或扩展解析器在 use_step_matcher 方法的帮助下进行处理。
behave.use_step_matcher(name)
修改解析步骤文本时的参数匹配器。Behave 中存在多个内置解析器,如下所示 -
-
parse − 它提供了一个简单的解析器,该解析器使用纯语法恢复步骤参数的正则表达式。例如,{parameter: type}。它允许使用类型转换器进行类型转换。
-
cfparse − 它支持基数字段 (CF)。默认情况下,它会为连接基数生成缺失的类型转换器(如果给出了基数等于一的类型转换器)。它可以支持以下解析表达式 -{values:Type+} – Cardinality=1..N、many{values:Type*} – Cardinality=0..N、many0{values:Type?} – Cardinality=0..1,可选 它允许使用类型转换器进行类型转换。
-
re − 它利用完整的正则表达式来解析从句。我们必须借助命名组 (? P<name>…) 声明从文本中获取的变量,然后将其提供给步骤 ()。
我们借助 register_type 方法可以对自定义匹配器以及新数据类型进行注册。
class behave.matchers.Matcher(func, pattern ,step_type=None)
它从步骤名称中提取参数。
-
pattern − 与步骤函数关联的模式匹配。
-
func − 步骤函数与模式关联。
-
check_match(step) − 与提供的步骤名称匹配。
-
describe(schema=None) − 以函数或匹配器对象的文本形式给出描述。
-
regex_pattern: 产生所利用的文本正则表达式。