
Os seis mandamentos de um bom QA Engineer
Em diversas situações do quotidiano, acredite-se ou não, já agimos como um tester, em que, por exemplo, verificámos se a televisão que acabámos de comprar funciona, se nos oferece tudo o que nos disseram que oferecia ou quando testámos todas as features e se faziam o que é suposto fazerem. Quem nunca foi comprar um sofá e se sentou para ver se era confortável?
Qualquer situação a que nos expomos hoje em dia está relacionada com testes, o que por vezes nos faz esquecer que um/a especialista em testes de software é alguém com uma preparação técnica, funcional e polivalente preparada para resolver diferentes situações complexas que surgem no seu trabalho diário. Isto é muitas vezes esquecido em muitos setores e projetos, onde os testes são realizados por outro tipo de perfis que não são totalmente especializados em testes, causando perdas económicas, de tempo e de esforço, em todo o mundo.
Um especialista em testes de software (QA Engineer) deve ter certas atitudes e aptidões para poder realizar o seu trabalho com garantia de qualidade, trabalhar em conjunto com os restantes especialistas dos projetos e, sobretudo, assegurar a qualidade do software para colocar um sistema em produção.
Vejamos quais são os seis mandamentos para ser um bom QA Engineer:
Paciência
Antes de mais, há a paciência: um/a QA Engineer deve ser paciente, não ter pressa, levar as coisas com calma e testar passo a passo, evitando a ansiedade ou pedidos desordenados.
Os testes são a fase mais árdua que um projeto pode ter, não pela complexidade técnica do código ou da arquitetura que o suporta, mas pelo pormenor concreto de encontrar defeitos em qualquer tipo de casuística existente. Devemos ser pacientes no desenho, execução e resolução de problemas, evitando, a todo o custo, deixar algo por fazer por estarmos com pressa.
Quando a paciência nos abandona, começamos a perder o foco, as coisas não são feitas como deveriam ser feitas e começamos a apressar decisões que não serão acertadas, como aceitar módulos ou funcionalidades que não foram 100% testados ou verificados de forma meticulosa, com o problema de que se um utilizador ou cliente levantar um defeito ou erro em produção, pode colocar-nos em evidência e avaliar que a estratégia de testes pode conter um defeito a ser corrigido.
Isto, evidentemente, não é contrário a dar luz verde a uma funcionalidade quando a casuística encontrada foi testada e onde um pequeno defeito possa ter escapado devido a uma margem mínima de erro que devemos sempre ter em conta.
Otimismo
Um/a QA Engineer tem de ser otimista, uma vez que os seus esforços são dedicados a encontrar problemas, erros e defeitos em "coisas" que ele próprio não fez. Por conseguinte, a atitude deve ser sempre positiva para evitar o lançamento de mensagens catastróficas e problemáticas que evidenciem deficiências ou fraquezas que causem suspeitas numa equipa que pode estar emocionalmente afetada ou sobrecarregada por prazos apertados.
Há um número infinito de projetos, uma multiplicidade de situações que podem levar-nos a trabalhar em estreita colaboração com as equipas de desenvolvimento, mas também a situações de confronto ou de desconforto que serão difíceis de gerir com atitudes negativas ou que não ajudam a unificar critérios ou a tornar visível o esforço que está a ser feito. Por esta razão, é importante trabalhar muito bem este ponto e levá-lo sempre como referência.
Humildade
Qualquer pessoa que se dedique aos testes de software tem que trabalhar a humildade acima de tudo, pois deve ser coerente com as suas limitações e até onde deve ir.
Esta qualidade deve ser o padrão a seguir quando se lida com outros colegas, proporcionando proximidade, prudência e uma forma de partilhar que não cause desconfiança, evitando rapidamente a toxicidade e o surgimento de mau ambiente e a possibilidade de causar danos gratuitos. Este tipo de atitudes, pessoas ou agentes de negatividade são os primeiros a ser evitados.
A humildade aproximar-nos-á, gerará aprendizagem e permitir-nos-á continuar a nossa carreira profissional, dando os passos certos como QA Engineer. Para o bem ou para o mal, temos de estar conscientes de que estamos num processo de aprendizagem constante que nos levará a áreas que não conhecíamos ou que iremos conhecer em breve.
A humildade aproximar-nos-á, gerará aprendizagem e permitir-nos-á continuar a nossa carreira profissional
Assertividade
A utilização da assertividade como uma qualidade ou capacidade intrínseca de um QA Engineer, é algo que nos caracteriza e que nos incentiva a expressar as nossas opiniões, gerar sugestões e defender o nosso trabalho de forma honesta, sem cair na agressividade ou passividade. Desta forma, respeitaremos os outros e respeitaremos as próprias necessidades da equipa de QA.
Por esta razão, devemos trabalhar muito a comunicação, um ponto que abordaremos posteriormente, com base na autoestima e na autoconfiança. Nos projetos de software, a equipa ou pessoa de QA está normalmente em minoria e, por vezes, não é escutada tanto quanto deveria, abordando aspetos tão importantes como a garantia de produção de um produto acima de tudo.
Com a assertividade também ajudaremos a resolver problemas do quotidiano e emoções negativas como a raiva e a revolta quando nada corre como deveria ou quando não nos sentimos apoiados.
Abstração
A utilização da abstração por uma pessoa dedicada aos testes de software permite-nos pensar ou observar as coisas com o nosso cérebro, sem a necessidade de as ver ou de as ter à nossa frente.
Esta capacidade ou atitude de um bom QA Engineer, permitirá, entre outras coisas, ler o que está escrito num texto, de modo a que as palavras que lemos construam um significado na nossa mente. Esta capacidade é absolutamente necessária para a compreensão da leitura.
A abstração ajudar-nos-á a resolver problemas, a pensar em soluções ou a ver as diferentes consequências de um defeito. Dando uma visão única à equipa de desenvolvimento, que poderá resolvê-lo de forma ágil.
Capacidade analítica
A capacidade de análise é uma qualidade que nos ajuda a compreender melhor a realidade de uma situação específica, no nosso caso, de um conjunto de testes ou do funcionamento de um sistema ou aplicação específica. O pensamento crítico ajudar-nos-á a estabelecer relações entre os diferentes elementos encontrados, a adquirir novos conhecimentos e a procurar diferentes perspetivas para abordar o nosso principal problema.
Trabalhamos esta capacidade enquanto detetamos defeitos, investigando a raiz do problema, procuramos a imparcialidade, tendo uma visão imparcial sem preconceitos em relação a ninguém ou a nenhuma equipa e, acima de tudo, temos um ponto de vista mais analítico e sem influências externas. As capacidades analíticas permitem-nos estabelecer diferentes prioridades para encontrar soluções para problemas específicos, procurando o melhor caminho possível.
Independentemente destas capacidades, é claro que existem muitas outras, que ajudarão a nossa capacidade global a ser melhor e muito mais centrada no trabalho conjunto com cada equipa ou área do ciclo de vida do desenvolvimento. As nossas capacidades devem sempre ajudar-nos a ser um teamplayer, a fazer com que todos fiquem contentes por trabalhar connosco e a acompanhar qualquer colega na sua jornada pela busca da qualidade.
Por último, todas estas qualidades ou capacidades não fariam sentido sem atender cada pessoa que trabalha connosco com um grande sorriso - é esse o nosso segredo.