按预期运行此功能文件

问题描述 投票:0回答:1

我有此功能文件。

Scenario Outline: Verify user can open and view document
Given user is in QueueHandling home page Dashboard
And user has batches assigned to himself/herself 
When user selects "<batchName>" batch from batch list
Then selected batch is opened in a new window
And user views all identified documents

Examples: 
| batchName |
| QGOL2B    |
| QGK3UB    |

Scenario Outline: Verify data in document
When user selects "<documentType>" document and compare data

Examples:
| documentType         |
| Settlement Coversheet|
| AssetLoanAgreement   |

Scenario: Verify user navigates back to QueueHandling home page Dashboard
Given user navigates back to QueueHandling home page Dashboard

我想这样运行。对于QGOL2B批处理,我要在结算结算单和AssetLoanAgreement的文档业务情景中执行验证数据。然后返回并导航到QGK3UB批处理,并在文档业务情景中验证结算封面和AssetLoanAgreement的数据。我如何实现?

c# selenium-webdriver cucumber specflow
1个回答
0
投票

黄瓜使得在功能中执行诸如循环和条件操作之类的工作确实非常困难。这是设计使然。功能不是用来记录和探索如何完成的,它们是用来记录为什么要做的和做的是的。

现在您有一些复杂的操作,并且您想验证此操作是否有效。在这种情况下,您需要记录的是此操作的含义及其重要性。

那么将批次放入“结算封面”和“ AssetLoanAgreement”的操作的名称是什么。为什么在一起做这些事情很重要。他们为什么联系在一起。订单重要吗等]

您需要提出许多问题并找到答案。完成此操作后,您应该就能编写出更简单的方案。

通常,如果要在场景中执行复杂的操作,将不同的场景链接在一起,循环执行,运行条件​​性行为或执行任何可能被视为编程的操作,并且想要在功能中执行此操作,则应停止并开始提出问题。

每次您开始探索一种新的行为时,您都应该能够编写一个简单的(幸福的道路场景),例如

Given I am ready to foo
When I foo
Then I should see I have foo'd

如果您无法写出初始情况,那么Cucumber会告诉您您需要提出问题并更清楚地了解自己的工作。

© www.soinside.com 2019 - 2024. All rights reserved.