首页 > 解决方案 > 在behat中选择没有id的表单输入

问题描述

我需要编写一个自定义函数来使用唯一的电子邮件地址填充电子邮件输入字段。但是该页面具有动态生成的 ID,因此我不能仅仅使用它$page->find()来轻松抓取元素。如何按名称获取输入元素?

public function iFillInUniqueEmail($arg1)
{
    $page = $this->getSession()->getPage();

    $element = $page->find('css', $arg1);

    if (null === $element) {
      throw new InvalidArgumentException(sprintf('Could not evaluate CSS selector: "%s"', $arg1));
    }

    $date = date('YmdHis');
    $email = "test" . $date . "@test.com";

    $element->setValue($email);
}

标签: phpbehatmink

解决方案


name您可以按属性查找元素,如下所示:

$el = $page->find('css', 'input[name="input_name_goes_here"]');

推荐阅读