【问题标题】:How to access the example values for a behat scenario outline?如何访问行为场景大纲的示例值?
【发布时间】:2019-03-27 00:15:20
【问题描述】:

这确实应该是简单直接的事情,但我无法在网上的任何地方找到答案。在 Behat 中使用场景大纲时,如何访问测试中的示例值?对于以下示例,我将如何访问测试中的电子邮件地址?我的自动化测试基本上会在一个文本字段中填写一个电子邮件地址,所以我想知道如何使用正在运行的这个特定场景中使用的 email_value 来填写它?

功能:电子邮件验证
背景:鉴于我在“www.somewebsite.com”
方案大纲:确认电子邮件验证

鉴于我用“”填写电子邮件字段
当我提交表格时
然后我应该看到“”

**例子:**
| | |
| |需要电子邮件的验证消息|
|史蒂夫@ |电子邮件必须有效的验证消息 |
|有效@email.com |评论页面 |

这是我的测试用例正在调用的函数,它只是查找文本字段并填写电子邮件地址......而不是用“测试”填充它,我想用我的大纲中的 email_value 来填充它。如何从下面的函数中访问该值?

公共函数fillForm()
    {
         $element = $this->driver->findElement($this->emailTextField);
         $元素->点击();
         $element->sendKeys("测试");

         #请查看您的回复并确认。
    }

2) 第二个问题有点相关,我想检查 submit_result 以查看它是否不包含“验证消息”一词,然后我知道这是一封成功(例如有效)的电子邮件,并将带我成功页面而不是显示错误。

谢谢大家!

【问题讨论】:

    标签: php bdd behat


    【解决方案1】:

    这些是一些开箱即用的定义步骤,您需要检查是否拥有所需的一切,如果没有,则需要自己定义。

    至于不同类型的参数

    示例:
    I fill in "field" for "value"

    字段和字段作为参数传递给关联的方法,因此如果您想打印它们或在某处记录它们,则需要访问该方法。

    场景大纲:

      Scenario Outline:
        Given I fill in "" with "value_placeholder"
    
        Examples:
          | field_placeholder | value_placeholder |
          | field_identifier  | actual_value      |

    使用支持 Behat 和 ctrl/command 的编辑器+点击步骤,看看如何使用它们。

    【讨论】:

    • 我现在只是在使用文本编辑器 (notepad++),因为我有一个快速的项目要处理。当你说它作为参数传递时,如何?这是给定的函数,我如何访问该参数?我试图让函数接受 $email_value 但它不起作用,我不知道应该调用什么参数。请告知 =) /** * @Given 我用“”填写电子邮件字段 */ public function iFillInTheEmailFieldWithEmailValue() { }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多