Behave 情景大纲

Behave 情景大纲

如果我们有一组类似的标准,并且结果要在一个场景中传递,就可以使用场景大纲。一个场景大纲会伴随着一个例子表。一个场景大纲可以有多个例子表。

在例子表中每找到一行(在标题行之后),测试就会被执行一次。要测试的值用括号<>内的名称表示。这些名字应该与例子表的标题相匹配。

这有助于减少代码行数(消除重复的步骤),并使我们的测试有序进行。

特征文件

场景大纲的特征文件如下:

Feature − User information
Scenario Outline: Check login functionality
   Given user enters "<name>" and "<password>"
   Then user should be logged in
   Examples: Credentials
      | name   | password |
      | user1  | pwd1     |
      | user2  | pwd2     |

请注意:我们把名字和密码参数用<>括起来。这些参数是在例子部分下面提供的列标题。在实现步骤中,我们将传递用”{}”括起来的参数。

同时,这些参数需要作为参数传递给实现方法。

相应的步骤实现文件

相应的步骤实现文件如下 –

from behave import *
@given('user enters "{name}" and "{password}"')
def step_implpy(context, name, password):
      print("Username for login: {}".format(name))
         print("Password for login: {}".format(password))
@then('user should be logged in')
def step_implpy(context):
      pass

输出

运行特征文件后获得输出,使用的命令是 behave –no-capture -f plain 。

Behave - 情景大纲

输出显示了 登录的用户名:user1,登录的密码:pwd1和登录的用户名:user2,登录的密码:pwd2 。这里,这两个数据集是由Example传来的。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程