cucumber功能:在表单中模拟多个选择字段

cucumber功能:在表单中模拟多个选择字段,cucumber,gherkin,Cucumber,Gherkin,我已经开始在一个用于管理清洁业务的应用程序中编写以下功能: Feature: Creating a new cleaner In order to allow Franchisees to allocate cleaners to jobs they need to be uploaded to the system Background: Given I am currently logged in to my account And I have navigate

我已经开始在一个用于管理清洁业务的应用程序中编写以下功能:

Feature: Creating a new cleaner In order to allow Franchisees to allocate cleaners to jobs they need to be uploaded to the system Background: Given I am currently logged in to my account And I have navigated to the "Cleaners" page And I want to add a new cleaner to the database Scenario: Add a new cleaner to the system Given I have brought up the "Add Cleaner" form Then I will need to complete the fields within the following form: | first_name | | last_name | | email | | date_of_birth | | postcode | | mobile | | other_phone | | address_1 | | address_2 | | work_radius | | **days_available** | | notes | When I have entered valid data Then I can save to the database And I will have added a new cleaner to the system 功能:创建一个新的清洁器 为了允许特许经营商分配清洁工工作,他们需要上传到系统中 背景: 鉴于我目前已登录到我的帐户 我已经导航到“清洁工”页面 我想在数据库中添加一个新的清洁器 场景:向系统中添加新的清洁器 鉴于我已经提出了“添加清洁剂”的形式 然后,我需要填写以下表格中的字段: |名字 |姓| |电子邮件| |出生日期| |邮政编码| |流动的| |其他电话| |地址1| |地址2| |工作半径| |**可用天数**| |注释| 当我输入有效数据时 然后我可以保存到数据库中 我会给系统添加一个新的清洁剂 除了欢迎对我编写场景等方式的评论外,我的主要问题是我无法模拟从预先填充的字段中进行选择:

填充可用的天数应允许特许经营商选择一周中哪几天以及哪几天内哪几小时有清洁工可供工作。这显然使返回查询成为可能,这些查询只显示任何给定日期/时间的可用清洁器


真的希望有人能解释一下这是怎么做到的吗?

只需简单介绍一下功能文件的结构。。。您的功能中的“然后”步骤应该是断言某件事情已经或没有成功完成

鉴于我已登录该网站
当我向站点添加新的清洁器时
然后我会看到清洁剂已成功添加

我建议使用易于理解的语言。您的场景不需要是关于如何使用站点的说明。过多的导航步骤可能会使您忘记场景的目的

要准确回答您关于可用天数的问题,需要了解网站的结构以及可用天数的输入方式。您是否从选择列表、填写表单字段等中进行选择?此外,由于您正在测试,可以考虑从步骤内设置数据(如散列、数组),而不是通过表传递所有信息。

只是一些值得思考的东西。干杯

根据你的最新帖子,我建议如下:

步骤
和我想向数据库中添加一个新的清理程序
似乎不是一个可操作的步骤,可以删除。当我输入有效数据时,步骤
也是如此。如果您在上一步中处理了表单填写,则表示您已经输入了有效数据

如果你需要多个可用的日子,我会考虑让它自己的步骤

And(/^the cleaner is available from (.*?) to (.*?) on (.*?)$/) do |start_time, end_time, day|
  #fill in start time
  #fill in end time
  #select day
end

Background:
    Given I am currently logged in to my account
    And I have navigated to the "Cleaners" page

Scenario:
    And I bring up the "Add Cleaners" form
    And I complete the form with
      | first name | Bob   |
      | last name  | Smith |
      ...
    And the cleaner is available from 0600 to 1800 on W
    When I submit the Add Cleaners form
    Then I should see the new cleaner has been successfully added

谢谢Jarod,非常有用的建议,谢谢。如果可用,我正在寻找的功能将允许用户从下拉选择[m、T、W、T、F、S、S]中选择清洁工愿意工作的天数,然后指定清洁工在这些天中每一天工作的确切时间,例如,由于其他工作任务,清洁工可能只能在周一09:00-13:00和周三14:00-17:00工作。从下拉列表中选择日期和时间。再一次,真的帮助了我,谢谢。只是澄清一下,当您说“如果您在上一步中处理填写表单”时,您的意思是我应该在单独的场景中定义日期/时间可用性字段的功能?如果您在自己的步骤中处理日期/时间,这将使您能够在同一场景中多次重复使用该步骤。这样你就可以在同一个表单上添加一个或多个可用的天数。真不错!再次感谢