Fique por dentro Show Autores: Bruno Bartholomeu Bessa, Welton Braz Resende e Marco Ant�nio Pereira Ara�jo Embora muito importante para identificar falhas que muitas vezes passam despercebidas pelos desenvolvedores, a pr�tica do teste de software � algumas vezes desconsiderada pelas empresas. Essa atividade n�o faz mais parte do processo de desenvolvimento, executada por programadores e analistas de sistemas, e agora deve fazer parte de um n�vel de processo mais qualificado. Nas empresas desenvolvedoras de software, j� existem equipes com profissionais altamente qualificados e experientes, respons�veis por fazerem toda a an�lise t�cnica de testes funcionais, n�o permitindo que erros e falhas passem despercebidos, promovendo, cada vez mais, a qualidade no produto desenvolvido. A verdadeira intenç�o ao se prover testes em um software � garantir a produtividade aliada � qualidade. Felizmente, hoje em dia h� uma gama de ferramentas para a automaç�o de testes de software. Tais ferramentas t�m como objetivo controlar a execuç�o dos testes e comparar os resultados alcançados com os resultados esperados. A automaç�o de teste � extremamente �til para realizar testes repetitivos � mas necess�rios � ou dif�ceis de se realizar manualmente. Este artigo tem como objetivo apresentar a ferramenta de automaç�o de testes Robot Framework, bem como sua integraç�o com a IDE Eclipse atrav�s da utilizaç�o do plugin Apache Maven 3. Para melhor ilustrar as capacidades da ferramenta, este artigo tamb�m prop�e uma explicaç�o b�sica sobre testes de aceitaç�o. Automaç�o dos Testes de Aceitaç�o Geralmente realizados nos est�gios finais de desenvolvimento com um pequeno grupo de usu�rios, os testes de aceitaç�o de software realizam testes de caixa preta inserindo dados em um programa para verificar suas sa�das. Uma das vantagens dos testes caixa preta � que n�o h� necessidade de se conhecer o c�digo fonte para test�-lo � ou seja, para se realizar esse tipo de teste, n�o � preciso entender como uma determinada operaç�o � realizada, mas sim o que ela deve fazer. A diferença entre o teste de caixa preta, utilizada no teste de aceitaç�o, e o teste de caixa branca, � que nesse �ltimo � poss�vel examinar o c�digo fonte em busca de pistas que podem ser �teis para o teste. Contudo, essa mesma liberdade proporcionada pelo teste caixa branca pode se tornar um problema quando o examinador tenta manipular os testes para que eles façam sentido dentro das operaç�es do c�digo � mesmo que estejam erradas. O maior problema desses testes � realiz�-los manualmente, pois demandam muito tempo e esforço, ainda mais levando-se em consideraç�o o qu�o repetitivo s�o os cen�rios de teste. Uma soluç�o encontrada � a de dividir os casos de teste mais importantes e, assim, reduzir a quantidade de testes que ser�o feitos. Contudo, isso acaba trazendo riscos, visto que haver�, como consequ�ncia, uma menor cobertura. Outra sa�da encontrada foi o desenvolvimento guiado por testes (TDD, Test-Driven Development), que organiza o processo de desenvolvimento, an�lise e teste do c�digo de forma unificada e s�ncrona. Essa pr�tica ajuda o desenvolvedor a manter, al�m da qualidade do software ao longo do processo, um controle maior sobre a organizaç�o do c�digo fonte. No entanto, mesmo com um intervalo de tempo maior entre os testes, acaba havendo um aumento nos casos de teste � o que � um ponto positivo, pois aumenta a cobertura �, e a realizaç�o dos mesmos continua maçante." [...] continue lendo...
Exemplo de automação da API Robot Framework usando Mark Winteringham`s - Restful-Booker Por padrão, ele está usando a versão online ao vivo do RestfulBooker, mas RestfulBooker pode ser executado localmente, você pode pegar o git hub aqui A documentação da API pode ser encontrada aqui Para quem é este repositório?Recém-chegados ao Robot Framework interessados em testes automatizados de API, em busca de exemplos O que é Robot Framework?A estrutura do robô é uma estrutura de automação de teste de software livre baseada em Python com grande extensibilidade. A estrutura do robô é multiplataforma e pode ser executada em Mac, Linux e Windows. Veja aqui a página inicial do Robot Framework O que exatamente é isso?Um conjunto de testes básico da API Robot Framework com os seguintes testes:
As seguintes bibliotecas de suporte são usadas neste pacote junto com algumas das bibliotecas integradas ... Validador JSON RequestsLibrary Como faço para configurar?
Depois de tudo ter sido instalado, você pode executar o conjunto de testes a partir da linha de comando na pasta de projetos com o comando robot .\api.robotPor padrão, ele será executado no site ao vivo na web. Isso pode ser alterado na linha de comando para apontar para uma instância local do restfulbooker executando robot -v BASE_URL:127.0.0.1:3001 .\api.robotou alterando a variável $ {BASEURL} no arquivo api.robotCom quem eu falo?
Este artigo tem como objetivo apresentar como podemos escrever scripts para automação de testes de uma forma bem simples e de baixa complexidade usando o Robot Framework. Após realizar um pequeno curso de introdução ao robot framework, procurei me aprofundar um pouco mais nos testes web e mobile, o resultado até o momento tem sido bem satisfatório. 😍 O conteúdo que será apresentado neste artigo está disponível no meu github https://github.com/caioandrian/curso_robot_framework. Fiquem à vontade para clonar, testar e também para apontar melhorias.😉 Importante: “As opiniões aqui colocadas refletem a opinião pessoal do autor e não necessariamente a opinião da Compasso UOL”. Quais são as vantagens de usar o robot framework? E quais são as desvantagens? Entendendo um pouco mais sobre a sintaxe com seções do Robot Framework:
Veja como podemos usar as seções no código, seguindo o exemplo das imagens abaixo.😃 Para esse projeto de teste, foi utilizado o design pattern Page Object e por esse motivo as seções estão separadas em dois arquivos. Agora temos um código que pode ser lido facilmente, e o mais importante, ficou mais fácil de entender o que cada caso de teste (3) está fazendo. 😍💡 Também podemos notar que algumas keywords provenientes das bibliotecas que instalamos, contribuem imensamente para que possamos escrever um código de automação com mais rapidez e baixa complexidade. Dica de como escrever um bom código de teste com robot framework: https://github.com/robotframework/HowToWriteGoodTestCases/blob/master/HowToWriteGoodTestCases.rst Documentação: robotframework.org/SeleniumLibrary/SeleniumLibrary.html Requisitos: Passos para instalação do robot framework e do selenium library: Como configurar a abertura e o fechamento de um navegador com o selenium no robot framework: Precisamos definir o nossos Setups para abrir e encerrar o navegador. Exemplos de keywords utilizando o Selenium Library:
Veja o exemplo de um caso de teste sendo executado com o robot framework e o selenium library no gif abaixo e do report em html gerado. Caso o gif não abra, por favor aguarde alguns segundos ou tente atualizar a página. Documentação: https://serhatbolsu.github.io/robotframework-appiumlibrary/AppiumLibrary.html Requisitos: Passos para instalação do robot framework e do appium library: Passos para iniciar a ligação entre o appium e device: Lembrete: Como configurar a abertura e o fechamento de um aplicativo com o Appium no Robot Framework: Precisamos definir o nossos Setups para abrir e encerrar a aplicação. Exemplos de keywords que utilizando o Appium Library:
Veja o exemplo de um caso de teste sendo executado com o robot framework e o appium library no gif abaixo e do log gerado. Caso o gif não abra, por favor aguarde alguns segundos ou tente atualizar a página. Esses foram meus primeiros testes usando o robot framework, o projeto completo deste exemplo está no meu github. https://github.com/caioandrian/curso_robot_framework Espero que tenham gostado.🙂 Até a próxima. Referências Bibliográficas ESTIVALET, Luiz Fernando. Testes Automatizados Usando Robot Framework — Módulo 1. Udemy, 2021. Disponível em: <https://www.youtube.com/watch?v=W5hcHbzTjOc>. Acesso em: 10 out. 2021. |