Rumores de que testadores são menos técnicos que os desenvolvedores é bem comum, principalmente quando envolvidos com testes manuais. Isso os classifica como testadores reativos, que procuram bugs em sistemas entregues pós codificação, em vez de atuar proativamente em busca de falhas em etapas de planejamento, design e desenvolvimento.

Sim, é uma prática/vícios que contraímos ao trabalhar em projetos cascata. Porem quando aprendemos a trampar com ágil e DevOps, ser Full-Stack é fundamental para atuar como agente de qualidade dentro do time.

Famosas frases de QAs:

– Fiz faculdade de TI, mas olha, não gostei de programação, portanto virei testador
– Sou Testador Funcional e automação não é meu perfil
– Tenho medo de programar, por isso nunca me interessei por automação de testes.

Bom, são frases famosas no mundo da Qualidade de Software!

Isso muda quando o Testador decide se tornar Full-Stack

Um desenvolvedor que domina tecnologias que implementam desde o back-end até o front-end é chamado de Dev Full-Stack. Da mesma forma, um Analista de Testes que atua em todo o processo de desenvolvimento com foco em qualidade e usa diferentes métodos e técnicas de testes (automação, back e front-end) para testar sua aplicação, que pratica a cultura de DevOps (QAOps não existe), colabora com especificações ágeis (ATDD, BDD), e foca no negócio é um QA Full-Stack.

QA pode ser DevOps?

Claro que sim. O termo DevOps deriva da junção das palavras “desenvolvimento” e “operações”, portanto um QA que automatiza/desenvolve tarefas operacionais, também possui habilidades de DevOps. Ou seja, QAOps é um rotulo totalmente desnecessário.

Um QA Full-Stack, atua em todas as camadas do sistema (User Interface, Serviços, Unitários). Também se preocupa com outras técnicas de testes, como funcionalidade, usabilidade, performance, segurança, e por aí vai. Domina Automação de Testes, possuí habilidades técnicas, analisa LOGS, ajuda o DEV a debugar e encontrar problemas, implementa ATDD (Desenvolvimento guiado por testes de aceitação) e faz enriquecimento de histórias de usuários. Bastante coisa né?

Por que precisamos de QAs Full-Stack?

A principal motivação para o QA se tornar Full-Stack é a atuação em processos ágeis. Porque as entregas ocorrem com mais frequência, e com isso, o QA têm menos tempo para concluir todos os testes (regressão). Não dá tempo testar tudo (regressão) dentro da sprint, agora se tiver uma sprint de DEV e outra de QA, convenhamos que não é ágil, mas sim um cascágil =P

Para ter entrega com qualidade, as tasks de teste precisam fazer parte do conceito de pronto da sprint. Testes contínuos devem ocorrer durante toda sprint. Através da automação de testes, e o QA pode contribuir com isso.

Oportunidades

QAs com várias habilidades (ninjas) podem obter salários melhores, trampar em empresas, startups inovadores e ter uma carreira de sucesso.

Atributos do QA Full-Stack

Um QA Full-Stack precisa conhecer muito bem o produto e entender como testa-lo usa-lo do ponto de vista do usuário. Deve estar envolvido nos estágios iniciais do desenvolvimento, para que possa compartilhar suas ideias e experiências a partir de uma perspectiva de teste e do usuário. Acredite, isso pode e sempre previne Bugs toscos ou complexos.  

Foco no negócio

O QA Full-Stack precisa entender como os usuários usam o produto e se preocupa com sua usabilidade.

QAs Full-Stack pensam em processos eficientes, investem em automação, e fazem questão de ter controle total na preparação de massa de testes, dados e ambientes. Mesmo sabendo que o usuário pode testar apenas a interface final no navegador, implementam testes na camada de serviços (por exemplo, uma API REST), batchs, jobs, etc. No geral o QA Full-Stack sempre considera a melhor estratégia para implementar testes e garantir qualidade e estabilidade do produto.

Régua alta

Empresas inovadoras preferem contratar QAs Full-Stack. À medida que um testador adquire as habilidades de um QA Full-Stack, sua influência na qualidade do produto aumenta. Um QA Full-Stack também é especialista do produto e pode avaliar riscos.

Sendo protagonista

A qualidade é essencial no mundo digital, e muitas empresas subestimam o valor da qualidade, vendo mais como FARDO do que cultura, por outro lado, o processo a cultura de qualidade deve estar envolvida no ciclo de vida do desenvolvimento de projetos desde o início, mas, na prática, isso nem sempre acontece. Uma equipe QA que possui e/ou capacita seu time para se tornar QA Full-Stack pode ajudar a melhorar isso e terá a oportunidade de ter uma influência muito maior no produto, podendo obter o nível de qualidade mais alto do que nunca.

Além da Automação

Até aqui deu para notar que um QA Full-Stack não é apenas um Testador que sabe automação para Web e APIs. De fato é o agente que garante não somente a qualidade do Software, mas do processo. E isso é muito legal!

O caminho do “testador” ao “QA Full-Stack” é desafiador e glorioso, ao concluir a jordana, certamente terá melhores oportunidades no mercado 🙂

Tiago Pereira da Cruz Profissão
Software QA Engineer na VR Benefícios

E ai curtiu? Deixe sua opinião. Vamos trocar ideia.