Behave 枚举

Behave 枚举

枚举是用来将多个不同的基于字符串的单词映射到数值上。

我们可能需要一个具有以下特点的用户定义的数据类型 −

  • 必须匹配少量的词。

  • 在测试执行前预先定义的值。

对于上述情况,可以使用基于字符串的枚举法。

特征文件

考虑一个特征文件,用于特征标题的支付过程,如下所述-

Feature − Payment Process
Scenario − Response
      When User asks "Is payment done?"
      Then response is "No"

在步骤实现文件中,TypeBuilder.make_enum函数为提供的单词或字符串的枚举评估一个正则表达式模式。方法register_type用于注册一个用户定义的类型,该类型可以在匹配步骤时被解析为任何类型转换。

同时,我们将传递参数:用户定义的枚举数据类型,用”{}”括起来。

相应的步骤实现文件

上述特征的步骤实现文件如下-

from behave import *
from behave import register_type
from parse_type import TypeBuilder
# -- ENUM: Yields True (for "yes"), False (for "no")
parse_response = TypeBuilder.make_enum({"yes": True, "no": False})
register_type(Response=parse_response)
@when('User asks "{q}"')
def step_question(context, q):
   print("Question is: ")
   print(q)
@then('response is "{a:Response}"')
def step_answer(context, a):
   print("Answer is: ")
   print(a)

输出

运行特征文件后得到的输出结果如下。在这里,我们使用了命令 behave –no-capture -f plain .

Behave - 枚举

输出显示: Is payment done?False False的输出来自枚举数据类型。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程