Cucumber 中的数据表是什么?

2024 年 8 月 29 日 | 阅读 2 分钟

当我们需要测试 Web 应用程序的众多输入参数时,可以使用数据表。例如,新用户的注册表单涉及多个要测试的参数,因此,我们可以使用数据表。

让我们通过 javatpoint.com 的注册表单的实例来理解数据表,这是一个 Web 应用程序。对于此注册表单,我们将创建一个典型的 feature 文件,稍后我们将创建一个带有数据表的 feature 文件,以识别它们之间的区别。

注册表单包含以下参数

  • 用户名
  • 电子邮件
  • 密码
  • 确认密码
  • 出生日期
  • 性别 (Gender)
  • 电话号码

测试“用户注册”功能的 Feature 文件。

Feature: New user registration.
Scenario: Verification of successful registration when the inputs are correct. 
Given user on the user registration page
 When user enters a valid user name 
And valid e-mail address 
And valid password 
And valid confirmation password 
And valid Birth-date 
And valid Gender 
And valid phone number 
Thenuser registration should be successful 

在上面的 feature 文件中,我们可以看到,由于多次使用“And”,它乍一看有点复杂。因此,为了减少这种类型的复杂性,我们可以使用“数据表”。

数据表包含一组输入参数,这些参数提供给单个标签,例如GIVEN、WHENTHEN

让我们用数据表创建上述 feature 文件,看看它会是什么样子

Given the user on the user registration page.
When user enter invalid data on the page
| Fields|| Values|
| First Name            | User Name           |
| Last Name             | User Last Name      |
| Email Address         | [email protected]    |
| Re-enter Email Address | [email protected]   |
| Password              |PASSWORD|
| Birth-date              | 02|
Then the user registration should be successful.

在上面的 feature 文件中,我们可以看到注册表单的所有参数都以一种简单且可识别的方式组织起来。