Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Refatoração com PageObjects

Fala mestre,

No método "enviaFormulario" você criou uma refatoração na forma de enviar o submit, buscando o prório botão de submit e assim ficando mais coerente.

O problema é que dessa forma no momento de enviar o formulário com algum campo em branco o navegador se esbarra com com as validações criada no front ( os campos requeridos), o que impede o envio do formulário e impedindo assim fazer alguns tipos de testes. Você sabe dizer se tem alguma forma de contornar esse problema sem ter que enviar o submit através do método submit de outro campo?

5 respostas

Então, Diego, a intenção foi exatamente essa. Dar a flexibilidade pra enviar um formulário inválido e garantir que as validações estão funcionando, por exemplo.

Mas caso queira, pode fazer como fizemos em realizaLoginCom, passando todos os parâmetros necessários. Até criando um objeto específico para representar os dados desse formulário.

Oi mestre, ou eu não entendi bem a proposta ou você não entendeu a minha dúvida rsrs.

Eu quero poder enviar um formulário com um campo em branco para garantir que as validações feitas no back estão funcionando, porém utilizando a captura do botão submit e realizando um click nele não me permite enviar o formulário por que esbarra nas validações do front. Existe alguma maneira de contornar isso realizando o envio com a captura e click do submit? Ou para burlar as validações no front só através do método submit de algum input?

solução!

Eita, realmente eu não tinha entendido sua pergunta.

Se esse comportamento não existe no sistema real, você não vai testá-lo.

Uma situação onde isso aconteceria (da validação no front falhar) seria de alguém editar o fonte da página, certo? Então você pode usar o JavaScript runner pra desativar a validação do form, por exemplo.

Mas isso é bastante incomum.

Eu pensei exatamente nisso, de alguém editar o fonte da página.

Testar o envio de um formulário com um campo em branco não é um teste que agregaria valor? Se caso agregue eu penso deveria testar esse cenário do fonte editado para garantir a consistência do sistema, já que as validações do front "não servem" para muita coisa.

Ou o mais comum é apenas garantir as validações do front mesmo?

Depende muito do projeto e do propósito, Diego. Na minha opinião, não agrega valor não, pela visão de produto.

Talvez pela visão de segurança faça sentido...