1

我正在运行 Behat 功能文件,我尝试在表单字段中选择一个选项

When I select "Lisa Hayes" from "settings_custom[Counselor][]"

其中“Lisa Hayes”是表单名称“settings_custom[Counselor][]”中的值之一。元素详细信息如下:

<select id="settings_customCounselor" name="settings_custom[Counselor][]" multiple="multiple" size="4" class="valid">
<option value="" selected="">(does not matter)</option>
<option value="685572">Lisa Hayes</option>
<option value="685573">Ricky Hunter</option>
<option value="685574">Max Sterling</option></select>

在命令行上执行功能文件时出现错误

未找到具有 id|name|label|value“settings_custom[Counselor][]”的表单字段。

我的默认驱动程序是 selenium2(我有 selenium-server-standalone-2.32.0.jar 服务器在后台运行,我的浏览器是 firefox)。

请注意,当我将默认驱动程序从 selenium(Web 驱动程序)更改为 goutte(无头)时,这非常有效。

我试图搜索这个论坛并用谷歌搜索任何细节,但没有找到任何有用的信息。

如果您需要更多信息,请与我们联系。谢谢!

4

1 回答 1

1

我刚刚解决了这个问题。

问题不在于该功能的语法。声明前的步骤

When I select "Lisa Hayes" from "settings_custom[Counselor][]"

由于某种原因没有加载正确的页面。因此,步骤定义找不到元素。

我尝试替换语句以直接进入表单所在的页面并实现等待语句以确保加载所有元素

And I am on "some URL"
And I wait "2000"
When I select "Lisa Hayes" from "settings_custom[Counselor][]"
...

这现在有效。

于 2013-05-08T15:37:40.903 回答