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 — UNIP

Experiê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.

https://www.linkedin.com/in/eleandra-monq/

Originally published at http://ftstblog.wordpress.com on April 16, 2018.

Falando em testes…

Falando em testes…

Falando em testes…

Qualidade de software, aprendizado & colaboração.

Falando em testes…

Written by

O ‘Falando em testes…’ surgiu a partir da vontade de aprender e consequentemente, ajudar outros profissionais a se desenvolverem.

Falando em testes…

Qualidade de software, aprendizado & colaboração.