Qual é o futuro papel do testador?


7

Se o novo paradigma é "Você constrói, você executa" (Werner Voegels, Amazon CTO), que obviamente coloca muito mais responsabilidade - e pressão - nos engenheiros de software, o que essa mudança introduz na tarefa da equipe de teste?

Respostas:


9

IMHO que depende de qual era o papel do testador antes de tal transformação. BTW, acredito que minha resposta se aplica à transformação do DevOps em geral, não apenas ao You build it, you run itparadigma.

Se a função era um trabalho de drone - executando testes sem pensar - provavelmente desaparecerá, a automação consumirá esses trabalhos.

Se a função incluísse escrever os planos e especificações de teste, eles poderiam continuar fazendo isso ou até transformar os scripts de automação correspondentes, lado a lado com os desenvolvedores. Ou autônomo - em alguns ambientes, é obrigatório o uso de uma metodologia / infraestrutura / pessoal completamente separada para testes, do que o (s) utilizado (s) para o desenvolvimento. Em muitas organizações, os testadores são engenheiros de software, assim como desenvolvedores.

Se o papel estava executando testes intencionalmente não confiáveis ​​/ surpresa, exigindo especificamente traços humanos (emoção, subjetividade, inspiração, reflexos, intuição etc.) para complementar o teste automatizado - isso também não muda.


graças Dan - Eu gostaria de ler mais sobre testes de surpresa, não sabia há tal no campo da engenharia de software
Peter Muryshkin

11
@ J.Doe Eu ouvi recentemente sobre o conceito, antes de descartar tais testes como não confiáveis ​​e, portanto, inutilizáveis. No entanto, eu estava olhando apenas como um teste de detecção de regressão. Mas pensei mais e acredito que há áreas em que esses testes podem ser realmente úteis para o desenvolvimento - para jogos ou outros aplicativos pesados ​​de UX, por exemplo.
Dan Cornilescu

4

"Você constrói, você executa"

Esta citação visa enfatizar o intervalo entre as equipes de silo, um dos princípios dos devops é evitar que o silo realize uma tarefa.
Embora a idéia aqui se concentre nas fases de construção e execução, a idéia importante é reunir uma equipe inteira, da arquitetura às funções de exploração . Uma "Equipe de Devops" seria composta por todas as funções que participam do ciclo de vida do software, incluindo a função de testador, com ninguém na equipe lidando com uma única função.

A principal mudança para um testador seria aprender a expressar suas opiniões e feedback sobre a fase de planejamento em uma equipe ágil e provavelmente participar de algumas tarefas operacionais.

Mas, apesar de tudo, não existe uma regra exata, o que alguém anteriormente em um silo faria em uma "equipe de Devops" depende do que ele / ela está mais interessado e confortável em fazer. Esse é um dos desafios de uma equipe recém-criada, identificar as melhores habilidades de todos para compartilhar a carga da maneira mais eficiente.


posso perguntar se você teve uma determinada topologia de equipe do DevOps, como sugerido aqui [1] ou todas elas? web.devopstopologies.com
Peter Muryshkin

11
Nem todos eles, mas temos equipes de produtos mais ou menos avançadas. Um grupo é do tipo 1, não temos realmente o tipo 2 (muitos produtos para uma equipe de Ops em primeiro lugar), acho que temos uma equipe no Anti-tipo C também. Obrigado pelo link, é uma leitura muito interessante ..
Tensibai

de nada; antes que haja uma disseminação desse conteúdo - você sabe o quão rápido isso pode acontecer - há uma chance de formular uma pergunta para validar essas topologias por meio dessa comunidade sem chegar a uma opinião opinativa (por exemplo, talvez exista alguma redação a ser ajustada ou adicione outra tipo ausente). Sth como ... "o que está faltando nesses DevOps topologias?"
Peter Muryshkin

11
Receio que pedir opiniões sobre algo que já seja uma opinião não traga nada de valioso.
Tensibai

2

Sou engenheiro sênior, nessa capacidade faço contratações.

Neste ponto da progressão dos devops, eu achava difícil contratar um Teste que não conseguisse facilmente fazer a transição para uma função de Engenheiro de infraestrutura (o que outros poderiam chamar de função de Devops)

Eu não esperaria que um testador, por exemplo, conheça os meandros da multithreading da JVM ou seja muito opinativo no design da classe python. Eu esperaria que eles fossem capazes de entender a fonte que eles podem escrever código stub ou gerar dados sintéticos.

Eu esperaria que um testador moderno conhecesse o arsenal básico de devops dentro da minha equipe. Isso incluiria: o provisionamento de servidores bare metal usando nossas ferramentas CM, a implantação de código por meio de vários artefatos ou contêineres.

Eu exigiria ainda que eles tivessem alguma capacidade como engenheiro de dados no sentido de saber como os dados se movem através de um sistema. Pensando em onde estão os pontos únicos de falhas e como simular falhas, otimização etc.

Eu nunca contrataria um testador para realizar testes no nível do módulo, que definiria como a interação de um punhado de classes (por exemplo, 1-20) atrás de uma barreira de rede.

tl; dr Eu contrataria testadores para configurar ambientes, simular (ou reproduzir) dados através desse ambiente e causar caos no ambiente.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.