Última atualização em 09 de agosto de 2020 — Guy Arieli, CTO Quality
Continuous Testing

Visão geral do robô

Robot Framework é um automação de teste framework que torna mais fácil para as equipes de QA gerenciar testes de aceitação e ambientes de desenvolvimento orientado a testes de aceitação (ATDD). A ferramenta foi projetada pela primeira vez por Pekka Klarck em 2005 e desenvolvida na Nokia Networks no mesmo ano. Foi oferecido como código-fonte aberto em 2008. Escrito em linguagem Python, o Robot oferece um rico ecossistema de bibliotecas e ferramentas, permitindo que você o integre a praticamente qualquer solução de automação de teste. A estrutura também roda em IronPython (.NET) e Jython (JVM). Também é independente de plataforma e de aplicativo. A ferramenta vem com sintaxe fácil e usa uma abordagem de teste baseada em palavras-chave. As palavras-chave são legíveis por humanos. Você pode usar as palavras-chave internas ou criar uma do zero. Atualmente, a Robot Framework Foundation agora cuida do desenvolvimento da ferramenta.

O que é Teste de Aceitação?

Teste de aceitação faz parte de um projeto de teste que verifica se o software está em conformidade com as especificações funcionais e os requisitos de negócios antes de colocá-lo em produção. Em um típico pipeline de teste, os testes de unidade são executados primeiro. Eles são seguidos por teste de integração e teste do sistema. Por fim, o teste de aceitação é feito para garantir que o software atenda a todos os requisitos de negócios antes de ser entregue aos usuários finais. O teste de aceitação é normalmente executado executando o teste Black Box.

O teste de aceitação é feito de duas maneiras, por exemplo:

  1. Teste de aceitação interna: Os membros da empresa de software que não participaram do desenvolvimento desse software irão testá-lo.
  2. Teste de Aceitação Externa: Membros de fora da empresa de software irão testá-lo (principalmente, clientes que solicitaram esse software). Mais tarde, os usuários finais irão testá-lo.

O que é Desenvolvimento Orientado a Testes de Aceitação (ATDD)?

O Desenvolvimento Orientado a Testes de Aceitação (ATDD) é uma abordagem centrada no usuário para automação de testes. Em um ambiente Test-Driven Development (BDD), os desenvolvedores escrevem testes de sua perspectiva. ATDD funciona ao contrário. Aqui, diferentes equipes, como desenvolvedores, controle de qualidade e clientes, colaboram na preparação de casos de teste de aceitação antes de incorporar a funcionalidade ao aplicativo. Com uma abordagem centrada no usuário e colaboração perfeita entre equipes de desenvolvimento e especialistas funcionais, os aplicativos desenvolvidos têm uma chance maior de atender aos critérios de aceitação. Com o ATDD, o teste funcional torna-se fácil e eficaz.

O desenvolvimento orientado a comportamento (BDD) e o ATDD compartilham muitas semelhanças. No entanto, eles diferem em um aspecto fundamental. O BDD se concentra no comportamento de um recurso, enquanto o ATDD se concentra nos requisitos.

A história do desenvolvimento baseado em testes de aceitação

Foi Kent Beck quem mencionou pela primeira vez o conceito de ambiente de desenvolvimento baseado em testes de aceitação em um livro, 'Test Driven Development: By Example' em 2003. Ele opinou que isso era praticamente impossível. No entanto, a popularidade da ferramenta de automação de teste de código aberto Fitnesse, que forneceu boa colaboração entre as partes interessadas nos negócios, tornou o ATDD uma realidade.

O ATDD fornece uma compreensão clara dos requisitos do usuário de um aplicativo, servindo como um guia para todo o projeto de desenvolvimento. Também facilita a boa colaboração entre equipes diferentes. Algumas das ferramentas usadas para ATDD incluem Robot Framework, TestNG, Fitnesse, Thucydides e EasyB.

Estrutura do robô para teste de aceitação e ATDD

Antes de prosseguir com esta estrutura, é importante entender alguns dos principais aspectos da ferramenta.

  1. Casos de teste baseados em tabelas: A ferramenta permite escrever casos de teste usando palavras-chave em um formato tabular simples.
  2. Palavras-chave: A ferramenta oferece palavras-chave integradas para escrever casos de teste. Você também pode importar palavras-chave de bibliotecas de código aberto ou criar suas próprias palavras-chave.
  3. Bibliotecas: A ferramenta suporta uma variedade de bibliotecas, como biblioteca Selenium, biblioteca iOS, biblioteca Debug, biblioteca FTP, etc.
  4. Recursos: A ferramenta permite importar arquivos de robôs com palavras-chave de fontes externas.
  5. Variáveis: A ferramenta suporta três tipos de variáveis; variável escalar, variável de dicionário e variável de lista.
  6. Tags: A ferramenta permite marcar casos de teste para que você possa adicioná-los ou omiti-los durante a execução de suítes de teste.
  7. Relatórios e Logs: A ferramenta fornece os detalhes dos testes na forma de HTML e arquivos de log.

Introdução ao Robot Framework

Aqui estão os pré-requisitos para executar esta estrutura de teste de aceitação.

  1. Python com PIP
  2. Estrutura do robô
  3. wxPython
  4. PASSEIO

Passo 1: Instale o Python

Visite o seguinte site para baixar o software Python.

https://www.python.org/downloads/

Baixe a versão mais recente para o seu sistema operacional (por exemplo: Windows)

Estrutura do Robô Python

Clique duas vezes no software Python para iniciar a instalação.

instalação do robô framework python 32 bits

Você pode clicar em 'Instalar agora' para instalar o pacote padrão. Ele vem com pip, IDLE e documentação. Como alternativa, você pode escolher 'Personalizar instalação' para selecionar os recursos de sua escolha.

Observe que a configuração oferece uma opção 'Adicionar Python 3.8 ao PATH. Ao marcar esta caixa, a ferramenta atualizará automaticamente o caminho do Python nas variáveis ​​de ambiente.

opções avançadas do python

Personalize as opções de instalação, escolha o local e clique em Instalar para iniciar o procedimento de instalação.

progresso da configuração do python

Depois de terminar, você verá uma nota de agradecimento para Mark Hammond, que contribuiu para a ferramenta Python Windows.

sucesso da configuração do python

Para verificar se o Python e o pip estão instalados corretamente, abra o prompt de comando e execute o comando version.

  • python –versão
  • pip –versão

Observe que o pip é instalado junto com o python por padrão.

pitão pip

Agora, o Python e o pip estão instalados e prontos para uso.

Etapa 2: configurar variáveis ​​de ambiente

Depois de instalar o Python e o pip, você deve configurar as variáveis ​​de ambiente adicionando o caminho. Para fazer isso,

  • Vá para Sistema – > Configurações avançadas do sistema – > Avançado – > Variáveis ​​de ambiente

variáveis ​​ambientais

Adicione o caminho da pasta onde o Python está instalado na seção de variáveis ​​do sistema e na seção de variáveis ​​do usuário. Aqui, você vê que o caminho já está atualizado, pois esta opção é selecionada durante a instalação do Python.

Etapa 3: instalar o Robot Framework

Abra o prompt de comando e navegue até a pasta python e digite o seguinte comando:

  • Pip instala a estrutura do robô

instalar a estrutura do robô

O Robot Framework foi instalado com sucesso. Você pode verificá-lo usando o comando version.

  • robô – versão

Passo 4: Instale o wxPython

Baixe o software wxPython no seguinte link:

Abra o prompt de comando e digite o seguinte comando:

  • Instalação do Pip –u wxPython

instalação da estrutura do robô

Agora, wxPython versão 4.1.0 foi instalado com sucesso.

Passo 5: Instale o RIDE

Para instalar o RIDE, abra o prompt de comando e digite o seguinte comando.

  • pip instalar robotframework-ride

instalar a estrutura do robô

Agora, o RIDE está pronto para uso.

passeio pronto

Para abrir o RIDE, abra o prompt de comando e digite o seguinte comando:

  • passeio.py

A versão mais recente do Python, ou seja, 3.8.1, não suporta RIDE. Você tem que esperar pelo Future Ride 2.0. Você pode baixar a versão beta que é released em julho de 2020 no site do GitHub aqui:

https://github.com/robotframework/RIDE/releases

Como alternativa, você pode abrir um prompt de comando e usar o pip para instalar a versão beta do passeio

  • pip install –pré-atualização Robot Framework-ride==2.0b1

instalação de pip

O pip instala a versão beta do passeio.

variáveis ​​pip ride

Agora, abra o prompt de comando e digite o seguinte comando para abrir o editor RIDE.

  • passeio.py

bem-vindo ao passeio

Executando seu primeiro caso de teste usando o Robot Framework

Para executar seu primeiro caso de teste, abra o RIDE IDE usando o link de atalho na área de trabalho do Windows. Como alternativa, você pode usar a interface de linha de comando para abrir o RIDE.

Abra o prompt de comando e digite o seguinte comando.

  • passeio.py

editor de dados de teste de estrutura de robô

Clique em Arquivo -> Novo projeto

novo projeto de estrutura de robô

Digite um nome para o seu projeto e clique em ok.

estrutura do robô digite o nome

Você pode encontrar o nome do seu projeto de teste no menu do lado esquerdo em Test Suites. Clique com o botão direito do mouse no projeto de teste e selecione 'Novo caso de teste'.

robô novo caso de teste

Dê um nome para o seu caso de teste e clique em OK.

nome do caso de teste

Agora, clique na tela de documentação para documentar os detalhes do caso de teste.

caso de teste experiência de robô

Ride permite que você escreva scripts em um formato tabular. Você pode adicionar palavras-chave e valores para cada palavra-chave. Por exemplo, insira a palavra-chave 'log' e registre os detalhes do teste.

teste de robô experitest

Clique em salvar para salvar seu caso de teste.

Agora, você pode clicar no início para executar o caso de teste. Alternativamente, você pode executar este caso de teste a partir da interface de linha de comando.

Abra o prompt de comando e navegue até a pasta do caso de teste salvo. O arquivo é salvo aqui na pasta de scripts no diretório do projeto da estrutura do robô.

  • robot -T Expert1.robot

script de estrutura do robô

O caso de teste é executado com sucesso. O RIDE também cria o arquivo de saída no formato XML e os arquivos de relatório e log no formato HTML. Você pode verificar o relatório abrindo o arquivo HTML. Você pode abrir o arquivo HTML diretamente no Windows ou usar o prompt de comando para invocar o explorer. Verifique o nome do relatório e digite o seguinte comando no prompt de comando

  • Iniciar relatório-20200729-202047.html

A corrida normalmente armazena o relatório usando os dados no formato AAAA/MM/DD e a hora no formato HHMMSS.

relatório de teste experimental

Para verificar o log de execução do teste, clique no log no canto superior direito. Você também pode abrir o log usando a CLI

  • Iniciar log-20200729-202047.html

registro de teste

Como você pode ver no log de execução do teste, os testes são orientados por palavra-chave. Você pode verificar a palavra-chave e a mensagem fornecida com o nível fornecido.

análise experimental

Outro teste de amostra - Testando credenciais de login

Aqui está outro teste de amostra que abre um site e valida as credenciais de login. Além disso, um aplicativo de demonstração é usado para este teste em que um servidor de demonstração é executado em um host local em http://localhost:7272

página de login

Agora, crie um novo projeto e um caso de teste e adicione o seguinte código.

*** Configurações ***

  • Documentação Teste de amostra do Expertest usando SeleniumLibrary.
  • Biblioteca SeleniumLibrary

*** Variáveis ​​***

*** Casos de teste ***

  • Login válido
  • Abra o navegador para a página de login
  • Insira a demonstração do nome de usuário
  • Modo de senha de entrada
  • Enviar credenciais
  • A página de boas-vindas deve estar aberta
  • [Desmontagem] Fechar navegador

*** Palavras-chave ***

  • Abra o navegador para a página de login
  • Abra o navegador ${LOGIN URL} ${BROWSER}
  • O título deve ser a página de login
  • Insira o nome de usuário
  • [Argumentos] ${username}
  • Texto de entrada username_field ${username}
  • Insira a senha
  • [Argumentos] ${senha}
  • Texto de entrada password_field ${password}
  • Enviar credenciais
  • Clique no botão login_button
  • A página de boas-vindas deve estar aberta
  • O título deve ser a página de boas-vindas

Este conjunto de testes executará diferentes casos de teste e verificará a função de login com diferentes cenários, como nome de usuário inválido, senha inválida, login bem-sucedido, etc.

Concluir

Como o mundo dos negócios está mudando de um desenvolvimento baseado em recursos para uma abordagem centrada no usuário, o desenvolvimento orientado a dados de aceitação tem um papel fundamental a desempenhar no desenvolvimento de software e nos ambientes de teste. O Robot Framework serve justamente a esse propósito. Com métodos de teste orientados por palavras-chave, este código aberto torna mais fácil e econômico executar testes de aceitação. A sintaxe de fácil leitura e a interface fácil de usar tornam essa ferramenta uma boa escolha para testar empresas de todos os tamanhos.

Se você quiser ver alguns outros frameworks que podem se integrar com Digital.ai Continuous Testing Olhe mais de perto

Você está pronto para escalar sua empresa?

Explore

O que há de novo no mundo da Digital.ai

22 de abril de 2024

O preconceito na máquina: preconceitos de dados de treinamento e seu impacto no código gerado pelos assistentes de código de IA

Explore preconceitos nos dados de treinamento de IA que afetam a geração de código e aprenda estratégias para mitigá-los para um desenvolvimento de IA e inovação de software mais justos.

Saber Mais​
22 de fevereiro de 2024

Como o futurismo está moldando os testes em nuvem: uma previsão

Desbloqueie o futuro dos testes em nuvem: abordagens estratégicas para aproveitar a tecnologia de maneira eficaz, aprimorar a qualidade do software e garantir o sucesso dos negócios.

Saber Mais​
4 de dezembro de 2023

A busca pela qualidade: testes contínuos de software automatizados para a indústria automotiva

Desde a criação de testes com tecnologia de IA até sistemas de autocorreção, descubra como continuous testing e desenvolvimentos inovadores estão moldando o futuro das tecnologias conectadas, safee veículos confiáveis.

Saber Mais​