Estoy aprendiendo a escribir pruebas con pepino/webrat. Uno de mis escenarios de prueba está configurado para probar la validación del formulario (dejando los campos vacíos). Curiosamente, los campos que no completé con fill_in
se configuran en el atributo name
del campo. Esto solo ocurre cuando uso pepino, cuando uso un navegador esto no sucede.webrat autofilling campos de formulario
El paso que estoy usando es sencillo:
When /^I submit the form$/ do
# Not filling in the 'Name' field here
fill_in 'Description', :with => 'This is a description'
click_button 'Save'
end
Después de ejecutar el escenario que utiliza el paso anterior, puedo ver que el campo de texto "Nombre" está ajustado a "nombre" en lugar de estar vacío. Este es también el caso si completo en ese campo con un espacio vacío o nil
:
fill_in 'Name', :with => ''
La forma en que estoy probando es bastante simple:
<form action="/item/create" method="post">
<div>
<label for="ItemName">Name</label>
<input type="text" name="name" id="ItemName" />
</div>
<div>
<label for="ItemDescription">Description</label>
<textarea name="description" id="ItemDescription"></textarea>
</div>
<input type="submit" value="Save" />
</form>
Alguna idea de por qué ocurre esto?
+1 Por un problema interesante. No puedo esperar hasta que alguien lo imagine. – raidfive
¿Qué sucede si completa el nombre, pero no la descripción?Me pregunto si has golpeado una caja de borde con la etiqueta, el atributo y el valor siendo "nombre" –
@Mark, si llené el nombre pero no la descripción, llenaría el campo de descripción con el literal " description "que es el valor del nombre attrib de ese campo. – dmondark