Cucumber — Pontapé inicial
Caso ainda não tenha realizado a configuração do seu ambiente de testes, acesse nosso tutorial:
No passo 6 do post Cucumber — Configuração Windows criamos uma pasta na raiz do computador, onde ficará o nosso projeto de automação. Vamos acessar esta pasta:
Abra o console e digite o seguinte comando:
cd - para acessar a raiz da máquina Enter cd [diretório desejado]
No nosso caso ficará assim:
cd projetos/testes_automatizadosEnter

Dentro da pasta do projeto (neste caso, ‘ testes_automatizados
') crie uma arquivo chamado Gemfile (não possui extensão), nele ficará uma coleção de ' gems' que são necessárias para o desenvolvimento do nosso projeto de testes. Para começar, copie e cole no arquivo 'Gemfile' as seguintes ' gems ' (elas são necessárias para a fase inicial do nosso projeto):
source 'http://rubygems.org' gem 'capybara' -'gems' que simula o comportamento do usuário em aplicações Web. gem 'cucumber' - 'gems' que permite a escrita de testes em uma linguagem muito próxima da natural. gem 'selenium-webdriver' -'gems' responsável pela interação com o navegador.

Com o arquivo ‘Gemfile’, vamos instalar todas as ‘ gems’ acima e suas dependências, na pasta do projeto, com seguinte comando (no prompt):
bundle install

Na pasta do projeto digite o seguinte comando:
cucumber --intit
Com isso criamos a estrutura básica do nosso projeto.
Abra seu projeto com o editor de textos que escolheu. No caso, estou usando o Visual Studio Code:

A pasta ‘features’ armazena todos os arquivos que utilizaremos em nosso projeto, organizados em:
Crie uma pasta chamada ‘ specifications
' dentro da pasta ' features
', onde criaremos arquivos.feature
contendo os cenários de testes escritos em ' Gherkin ', de uma funcionalidade específica.
Gherkin é uma linguagem específica para o negócio, que permite descrever o comportamento do software sem detalhar como esse comportamento é implementado.
Na pasta step_definitions
ficam os arquivos.rb
contendo os scripts de testes, ou seja, o passo a passo de execução de uma funcionalidade descrita em gherkin.
Ainda na pasta ‘ features
' crie uma outra pasta e denomine ' page_objects
', nesta pasta criaremos dois arquivos.rb
, um contendo os elementos da página que iremos testar, e os métodos de testes, que nada mais é, que as ações que devemos simular na página (isso tudo ficará mais claro no decorrer do nosso projeto).
Por ultimo, temos a pasta ‘ support
', nela temos os arquivos de configuração do nosso projeto, como o arquivo env.rb
, onde definimos browser
, timeout
, página de acesso.
Na pasta ‘ support
' vamos criar um arquivo.rb
que chamaremos de ' hook
', nele vamos passar as variáveis do nosso projeto.
Abra o arquivo env.rb
e adicione as seguintes requisições:
require 'cucumber' require 'selenium/webdriver' require 'capybara' require 'capybara/cucumber'
E faça as seguintes configurações:
Capybara.register_driver :selenium do |app| Capybara::Selenium::Driver.new(app, :browser => :firefox) #definição do browser end Capybara.default_driver = :selenium Capybara.default_max_wait_time = 60 #tempo limite de execução Capybara.app_host = "https://www.linkedin.com/" #endereço da página a ser testada
Nosso projeto deve estar estruturado conforme a imagem abaixo:

Podemos listar ao menos 5 passos para a automação de uma funcionalidade:

No próximo post falaremos dos ‘5 passos’ para automação de uma funcionalidade, conforme descrito aqui.
Materiais recomendados:
http://docbehat.readthedocs.io/pt/v3.1/guides/1.gherkin.html
Conheça o autor:
Eleandra Bruna S. Monqueiro
Pós graduada em Engenharia da Qualidade Software — SENAC
MBA em Engenharia da Produção — UNESP
Graduada em Automação Industrial — UNIPExperiência em planejamento e execução de teste de software funcional para dispositivos móveis (Windows Mobile) e plataforma web. Conhecimentos em análise, qualificação e desenvolvimento de novos processos visando a qualidade do produto final.
Originally published at http://ftstblog.wordpress.com on April 16, 2018.