InstruçÔes
Criar um formulĂĄrio de pesquisa
Objetivo: Cumprir as user stories abaixo e fazer todos os testes passarem para completar o laboratĂłrio.
HistĂłrias de UsuĂĄrio:
1. VocĂȘ deve ter um tĂtulo de pĂĄgina em um elemento
h1 com o id title.
1. VocĂȘ deve ter uma breve explicação em um elemento p com o id description.
1. VocĂȘ deve ter um elemento form com um id de survey-form.
1. Dentro do elemento de formulĂĄrio, deve haver um campo de entrada requerido input para inserir seu nome, que tenha um id de name e um type de text.
1. Dentro do elemento de formulĂĄrio, deve haver um campo de entrada requerido input para inserir seu e-mail, que tenha um id de email.
1. Se for informado um e-mail que não esteja formatado corretamente, um erro de validação HTML5 deve ser mostrado.
1. Dentro do elemento de formulĂĄrio, deve haver um campo de entrada input para inserir um nĂșmero que tenha um id de number.
1. A entrada de nĂșmero nĂŁo deve aceitar algo que nĂŁo seja nĂșmeros, impedindo que vocĂȘ os digite ou mostrando um erro de validação do HTML5 (dependendo do seu navegador).
1. Se forem inseridos nĂșmeros fora do intervalo do campo de entrada do nĂșmero, intervalo esse definido pelos atributos min e max, um erro de validação de HTML5 deve ser mostrado.
1. Para os campos de entrada nome, e-mail e nĂșmero dentro do formulĂĄrio, deve haver elementos label correspondentes, que descrevam o propĂłsito de cada campo com os seguintes ids: name-label, email-label e number-label.
1. Para os campos de entrada de nome, e-mail e nĂșmero, deve haver um texto placeholder que forneça uma descrição ou instruçÔes para cada campo.
1. Dentro do elemento do formulĂĄrio, vocĂȘ deve ter um elemento de menu suspenso select com um id dropdown e pelo menos duas opçÔes para escolher.
1. Dentro do elemento do formulĂĄrio, vocĂȘ pode selecionar uma opção de um grupo de pelo menos dois botĂ”es de opção (radio) que serĂŁo agrupados usando o atributo name.
1. Dentro do elemento de formulĂĄrio, deve ser possĂvel selecionar vĂĄrios campos de uma sĂ©rie de caixas de seleção (checkboxes). Cada um desses campos deve ter um atributo value.
1. Dentro do elemento de formulĂĄrio, deve haver uma textarea para comentĂĄrios adicionais.
1. Dentro do elemento de formulĂĄrio, deve haver um botĂŁo com o id submit para enviar todas as entradas.
O que fazer:
Testes:
- VocĂȘ deve ter um elemento `h1` com o `id` `title`.
- O elemento `#title` nĂŁo deve estar vazio.
- VocĂȘ deve ter um elemento `p` com um `id` de `description`.
- O elemento `#description` nĂŁo deve estar vazio.
- VocĂȘ deve ter um elemento `form` com um `id` de `survey-form`.
- VocĂȘ deve ter um elemento `input` com um `id` de `name`.
- O seu `#name` deve ter um `type` de `text`.
- O elemento `#name` deve exigir a entrada.
- O elemento `#name` deve ser um descendente de `#survey-form`.
- VocĂȘ deve ter um elemento `input` com o `id` de `email`.
- O elemento `#email` deve ter um `type` de `email`.
- O elemento `#email` deve exigir a entrada.
- O elemento `#email` deve ser um descendente de `#survey-form`.
- VocĂȘ deve ter um elemento `input` com um `id` de `number`.
- O elemento `#number` deve ser um descendente de `#survey-form`.
- O elemento `#number` deve ter um `type` de `number`.
- O elemento `#number` deve ter um atributo `min` com um valor numérico.
- O elemento `#number` deve ter um atributo `max` com um valor numérico.
- VocĂȘ deve ter um elemento `label` com um `id` de `name-label`.
- VocĂȘ deve ter um elemento `label` com um `id` de `email-label`.
- VocĂȘ deve ter um elemento `label` com um `id` de `number-label`.
- `#name-label` deve conter um texto que descreva a entrada.
- `#email-label` deve conter um texto que descreva a entrada.
- `#number-label` deve conter um texto que descreva a entrada.
- O elemento `#name-label` deve ser um descendente de `#survey-form`.
- O elemento `#email-label` deve ser um descendente de `#survey-form`.
- O elemento `#number-label` deve ser um descendente de `#survey-form`.
- O elemento `#name` deve ter o atributo `placeholder` e um valor.
- O elemento `#email` deve ter o atributo `placeholder` e um valor.
- O elemento `#number` deve ter o atributo `placeholder` e um valor.
- VocĂȘ deve ter um campo `select` com um `id` de `dropdown`.
- O elemento `#dropdown` deve ter pelo menos dois elementos selecionĂĄveis (nĂŁo desativados) `option`.
- O elemento `#dropdown` deve estar aninhado dentro de `#survey-form`.
- VocĂȘ deve ter pelo menos dois elementos `input` com `type` `radio` (botĂ”es de opção).
- VocĂȘ deve ter pelo menos dois botĂ”es de opção aninhados dentro de `#survey-form`.
- Todos os seus botÔes de opção devem ter um atributo `value` e um valor.
- Todos os seus botÔes de opção devem ter um atributo `name` e um valor.
- Todos os grupos de botÔes de opção devem ter pelo menos 2 botÔes de opção.
- VocĂȘ deve ter pelo menos dois elementos `input` com `type` `checkbox` (caixas de seleção) aninhados dentro de `#survey-form`.
- Todas as caixas de seleção dentro de `#survey-form` devem ter um atributo `value` e um valor.
- VocĂȘ deve ter pelo menos um elemento `textarea` aninhado dentro de `#survey-form`.
- VocĂȘ deve ter um elemento `input` ou `button` com um `id` de `submit`.
- O elemento `#submit` deve ter o atributo `type` com o valor `submit`.
- O elemento `#submit` deve estar aninhado dentro de `#survey-form`.
Preview