Os desafios de um freela: primeiro aprender, para depois ensinar

Um caso real, vivido pelo colaborador Matheus Costa Vieira.

Imagine a seguinte situação: você recebe uma proposta para realizar um freela (um trabalho extra, feito de forma autônoma), mas para executá-lo, precisa aprender uma ferramenta nova e dispõe de pouquíssimo tempo para isso. É um grande desafio e caso você não consiga aprender a ferramenta a tempo seu trabalho poderá ser comprometido. E aí, você aceita entrar no jogo?

O colaborador da CINQ, Matheus Costa Vieira aceitou e teve que trabalhar duro para conseguir o conhecimento necessário a tempo e garantir que tudo funcionasse como o esperado.

Em sua pós-graduação, um professor perguntou se ele não queria fazer um freela. Essa seria uma ótima oportunidade de conseguir um trabalho extra, não fosse por um detalhe: quem executaria a automação de testes era uma estagiária que não tinha muita experiência com programação e a ferramenta que Matheus estava acostumado a utilizar era muito avançada. Além disso, ele não dispunha de muito tempo.

Tratava-se da “TheIntern”, uma ferramenta para testes automatizados que utiliza Promises em Javascript (um conceito relativamente avançado) e é utilizada em alguns projetos aqui na CINQ.

Assim, Matheus foi obrigado a buscar uma alternativa para resolver o problema e logo foi atrás de alguns fóruns/comunidades de desenvolvimento que pudessem auxiliá-lo com alguma ferramenta de testes que pudesse ser simplificada.

Ele descobriu diversas ferramentas, cada uma com suas vantagens particulares e teve uma semana para estudar uma a uma.

Até que, em determinado momento, ele encontrou uma ferramenta denominada “Chimp”. Restou-lhe então, mais um problema: a falta de tempo. Matheus só tinha 2 noites para aprender a ferramenta do zero. Mesmo assim, seguiu em frente, pois viu um grande potencial nela: o de excluir grande parte do trabalho de programação, que poderia ser feito por ele, enquanto a estagiária poderia se dedicar mais à parte de escrever os testes.

Ao final, tudo o que ela teve que fazer era basicamente texto puro sem ter que se prender à parte de programação. Com a linguagem Gherkin, ficou mais fácil remover detalhes da lógica de programação para focar em um conjunto de palavras que pudesse descrever o comportamento que cada funcionalidade deveria ter. E assim, foram criados padrões de escrita que puderam ser úteis para a reutilização da parte de código.

O maior trabalho da estagiária consistia em mapear, em um arquivo JSON, um nome, que identificaria links, botões, campos de texto, etc., com o seletor css associado a ele.

O freela resultou em um tremendo desafio, mas com dedicação foi um desafio que funcionou e ainda resultou em muito aprendizado. O projeto continua ativo na empresa, apesar de a estagiária ter saído da empresa.

“Foi uma aventura, mas que deu certo, que é o mais importante.”

Matheus Costa Vieira

 

Saiba um pouco mais sobre as ferramentas de automação de testes pelos olhos de um programador:

Segundo o Matheus, tanto a “TheIntern” quanto a “Chimp” são ótimas ferramentas, mas atendem necessidades diferentes.

A ferramenta TheIntern é utilizada para programação pura, e por isso exige um pouco mais de tempo, além de exigir um conhecimento avançado na linguagem Javascript.

A Chimp também exige certo conhecimento de programação, porém um programador júnior dá conta do trabalho mas, uma vez que a complexidade é retirada, pessoas com menos conhecimento no assunto podem executá-la, como foi o caso da estagiária.

Ambas as ferramentas utilizam o Selenium para a automação. Uma diferença é que na TheIntern, é necessário baixá-lo, atualizá-lo sempre que necessário,   executá-lo através da linha de comando. Já a Chimp o utiliza pacote NPM “selenium-standalone” que programaticamente instala, se não encontrar, e o executa.

Para facilitar a execução de todos ou parte dos testes foi implementado, basicamente, duas tarefas automatizadas com o auxílio da ferramenta GULP.

No dia 1° de abril, o Matheus dará uma palestra sobre o tema no CapivaraCodes, o maior evento de programação do Paraná. Confira! 

Posted in CINQ in the Media and tagged , , , , , , .