菜单

Fortalecendo a comunidade de Teste de Software em Belo Horizonte

Nos dias 27 e 28 de Setembro, realizamos um evento para pessoas apaixonadas por teste e qualidade de software em Belo Horizonte, na unidade Barroca do COTEMIG (Colégio Técnico e Faculdade de Minas Gerais).

Por que BH?

A ThoughtWorks está expandindo novamente no Brasil! A cidade escolhida para a abertura do próximo escritório é Belo Horizonte. Por isso, já estamos realizando diversos eventos na cidade para conhecermos mais pessoas e contratarmos 'ThoughtWorkers' para nosso novo escritório.

No entanto, não basta apenas realizarmos eventos de recrutamento. O legal é difundir conhecimento, a cultura da ThoughtWorks e de como trabalhamos. A ideia de fazer um Workshop de Selenium foi gerada com o intuito de mostrar um pouquinho do que é ser um analista de qualidade na ThoughtWorks, assim como colocar a mão na massa nas ferramentas que costumamos utilizar em nossos projetos.

Dessa forma, conseguimos compartilhar nossa experiência com pessoas que têm interesse em aprender mais sobre automação de testes e, por que não, identificar possíveis 'ThoughtWorkers' para trabalharem conosco no futuro!

O que discutimos durante o sábado:

  • Por quê automação de testes? (vantagens, desvantagens, quando automatizar, quando não automatizar)
  • Quadrantes do Teste Ágil, Pirâmide de Testes, Pirâmide de Testes Invertida
  • Introdução ao Selenium
  • O que é o DOM e como capturar elementos (id, class, name, css selector, xpath)
  • Arquitetura do Selenium e principais métodos
  • Configuração do ambiente de teste (Eclipse + Selenium-WebDriver + JUnit + Hamcrest)
  • Exercícios (mão na massa!)
  • Demonstração de alguns exemplos utilizando o padrão Page Object, Cucumber/BDD, Headless Browser e Mobile (Android) na nuvem (SauceLabs).

Como parte do workshop, preparamos alguns exercícios para demonstrar o funcionamento do Selenium WebDriver na prática. O primeiro foi automatizar uma busca simples no Google e validar se a busca retornou o resultado esperado.

Como muitos dos participantes não possuíam experiência suficiente com Selenium para fazer o exercício desde o início, nós fizemos o exercício coletivamente para que todos pudessem acompanhar e entender o que precisava ser feito.

Do segundo exercício em diante, deixamos as atividades como desafios para que todos tentassem fazer sozinhos ou com seus pares.

Todas as atividades exercitavam a captura e validação de diferentes tipos de elementos que iam desde uma caixa de texto simples, checkboxes e select boxes, bem como a utilização dos métodos da API do Selenium para a manipulação dos elementos.

Além disso, para mostrar o leque de posibilidades que o Selenium nos disponibiliza, fizemos uma demonstração de como realizar um teste automatizado em um dispositivo Android utilizando uma ferramenta de cloud testing.

Explicamos também como a utilização do padrão Page Objects pode auxiliar na organização e manutenção dos testes, e também na implementação de documentação executável utilizando os conceitos de BDD através do framework Cucumber.

A impressão que tivemos foi que os participantes se divertiram bastante implementando os exercícios. Para muitos, automação de testes era um conceito realmente novo, então completar as atividades foi, de fato, um desafio. Por outro lado, observamos também alguns participantes com boa experiência em automação de testes e interesse em saber mais sobre os padrões Page Object, BDD e automação de testes na nuvem.

Coletar feedback é uma das práticas que mais gostamos na ThoughtWorks, e não seria diferente nesse evento. Solicitamos que os participantes nos dessem feedback para sabermos o que devemos manter ou melhorar em futuros eventos.

Recebemos muitos feedback de agradecimento e de como o evento foi proveitoso e cheio de aprendizado. Alguns deles, inclusive, foram para que houvesse novas oportunidades como essa.

Como foi o domingo?

No final do workshop, convidamos todos para estender os aprendizados do sábado e participar das atividades no domingo. Nesse dia, tivemos algumas rodas de debate sobre alguns dos temas que fazem parte do dia-a-dia de um Analista de Qualidade na ThoughtWorks.

Aqueles que tivessem interesse em ingressar na ThoughtWorks também seriam mais que bem-vindos a entrarem no nosso processo de recrutamento! Um dos objetivos foi identificar pessoas alinhadas ao que a ThoughtWorks acredita, e com habilidades e interesse por alguma de nossas posições.

As discussões e reflexões foram muito ricas, diversas e interessantes. Com a contribuição de cada participante, foi uma oportunidade para a comunidade de software em BH questionar o que move seu dia-a-dia.

Foi possível também conhecer melhor cada participante individualmente e confirmar mais uma vez o potencial das pessoas na região.

E o que nós aprendemos no fim?

Quando você pergunta a alguém qual é a função de um analista de qualidade, na maioria das vezes a resposta é: “O testador é o cara alinhado ao processo, preso à documentação, responsável pela escrita e análise de requisitos e por testes exploratórios, que se envolve no projeto somente na etapa pós desenvolvimento para realizar testes, encontrar bugs e gerar inúmeros relatórios. E geralmente, o time de desenvolvimento não vê esse cara como amigo."

Só que a realidade do analista de qualidade na ThoughtWorks é muito diferente. Estamos presentes em todas as etapas do projeto, tomando conta não só dos testes, mas também da saúde do projeto como um todo e da garantia do conhecimento compartilhado entre todos no projeto. Tratamos a qualidade como se fosse uma responsabilidade do time e não de nossa função.

Por isso, a importância de eventos como esse é para ambos os lados.  

Para nós, difundir a experiência que adquirimos trabalhando como analistas de qualidade em projetos na ThoughtWorks; e para a nossa audiência, conhecer uma realidade diferente de muitas empresas. Dessa forma, aqueles que têm interesse em trabalhar conosco podem conhecer um pouco mais de como trabalhamos e obter diferentes experiências daquelas que fazem parte do perfil tradicional de um testador no Brasil.

Para aqueles que não conseguiram participar do evento, os slides da apresentação encontram-se aqui:

E os exercícios/códigos estão no GitHub oficial da ThoughtWorks. Para aqueles que são apaixonados por teste de software e têm interesse em trabalhar na ThoughtWorks, junte-se a nós aplicando aqui!

Um grande MUITO OBRIGADO para todos que ajudaram na organização do evento:

Bruna Chagas, Bruno Borges, Camilla Silva, Catherine Casale, Daniel Amorim, Guilherme Prestes, Gustavo Freitas, Luiza Nunes, Marcondes Silva, Raquel Vilas, Rodrigo Tolledo, Tania Gonzales, Tania Silva, Thais Freitas e Taíse Silva.