Loops 使用变量重复相同的场景
我正在用Behat测试一个web应用程序API的用户权限。我需要确保几个角色不能访问某些API。因此,我需要检查这些角色是否收到来自API的禁止响应。这很好,但由于有8个不同的角色,我的功能文件变得越来越大,因为我为每个角色重复所有步骤 我当前的功能编写如下:Loops 使用变量重复相同的场景,loops,behat,Loops,Behat,我正在用Behat测试一个web应用程序API的用户权限。我需要确保几个角色不能访问某些API。因此,我需要检查这些角色是否收到来自API的禁止响应。这很好,但由于有8个不同的角色,我的功能文件变得越来越大,因为我为每个角色重复所有步骤 我当前的功能编写如下: 功能:会计 @会计 场景:我想看看会计 考虑到我的角色是“销售” 当我想拿到账目的时候 那么我应该得到禁止的回应 当我想得到资产负债表的时候 那么我应该得到禁止的回应 当我想得到损益表的时候 那么我应该得到禁止的回应 鉴于我是“项目”的角
功能:会计
@会计
场景:我想看看会计
考虑到我的角色是“销售”
当我想拿到账目的时候
那么我应该得到禁止的回应
当我想得到资产负债表的时候
那么我应该得到禁止的回应
当我想得到损益表的时候
那么我应该得到禁止的回应
鉴于我是“项目”的角色
当我想拿到账目的时候
那么我应该得到禁止的回应
当我想得到资产负债表的时候
那么我应该得到禁止的回应
当我想得到损益表的时候
那么我应该得到禁止的回应
因为我有“支持”的角色
当我想拿到账目的时候
那么我应该得到禁止的回应
当我想得到资产负债表的时候
那么我应该得到禁止的回应
当我想得到损益表的时候
那么我应该得到禁止的回应
...
只有角色名改变了,其他一切都一样。我想知道是否有一种方法可以用不同的输入多次重新执行一个场景?或者有没有更好的方法来处理这种情况?这就是我们的目的:
场景大纲:我想看看会计
考虑到我的角色是“”
当我想拿到账目的时候
那么我应该得到禁止的回应
当我想得到资产负债表的时候
那么我应该得到禁止的回应
当我想得到损益表的时候
那么我应该得到禁止的回应
示例:
|角色|
|销售|
|计划|
|支持|
Scenario Outline: I want to see the accounting
Given I have the role of "<role>"
When I want to get the accounting
Then I should get a forbidden response
When I want to get the balance sheet
Then I should get a forbidden response
When I want to get the income statement
Then I should get a forbidden response
Examples:
| role |
| sales |
| project |
| support |