请注意,我是SitePrism的新手。我正在整理一个Capybara功能测试用例以编辑数据。表单的ID为“ edit_bears_1”,您可以想象其中#1根据当前对象的ID进行更改。
<form class="form-horizontal validate-form" id="edit_bears_1" action="admin/bears/1" accept-charset="UTF-8" method="post" novalidate="novalidate">
这是我创建的用于定义表单的SitePrism文件:
module Pages
module Admin
module Bears
class Edit < SitePrism::Page
set_url '/admin/bears/edit/:id'
set_url_matcher %r{/admin/bears/\d+/edit}
binding.pry
section :form, Form, "form#edit_bears_1"
end
end
end
end
如您所见,我目前已将表单的ID硬编码为#1,但这很可能会改变。如何用某种变量替换#1,该变量被求值并链接到我正在编辑的熊?感谢所有帮助!
答案 0 :(得分:0)
您可以编写一些脚本来重新创建它。或者,如果您觉得这是我们应该立即提供的支持,则可以创建问题并为其请求新功能。
GH链接:https://github.com/natritmeyer/site_prism/issues
脚本示例public function addUsername(string $url, string $username, string $password)
{
$delimiter = '://';
$parts = explode($delimiter, $url);
return $parts[0].$delimiter.$username.':'.$password.'@'.$parts[1];
}
请确保为每个引用赋予一个索引链接名称,否则它们将被自动覆盖。