Seis anos atrás, Roman Pechersky de Izhevsk fez cursos para testadores funcionais e começou a trabalhar como engenheiro de controle de qualidade. Alguns meses depois, ele encontrou a automação de testes e percebeu que queria desenvolver nessa direção.
Agora Roman lidera uma equipe de especialistas em automação, bem como um
centro de treinamento para testes automatizados no Izam EPsk. Ele contou como começou a estudar automação, como se desenvolveu, com quais problemas ele lidou e com quais hackers de vida ele usou.

Como conheci a automação
Encontrei a automação pela primeira vez quando o líder técnico do nosso projeto sugeriu que eu cobrisse os autotestes com verificações para que pudessem ser executados após qualquer alteração e receber feedback rapidamente. Naquela época, eu não trabalhava nos testes havia um ano, então não me sentia muito confortável. Apesar disso, a tarefa me pareceu interessante e decidi tentar concluí-la, embora nem soubesse por onde começar.
Alguém dos colegas do projeto me contou sobre o Selenium IDE, uma ferramenta para automatizar as ações de um navegador Firefox. Lembro-me de como escrevi meu primeiro autoteste usando o método Record and Play: liguei a gravação, comecei a pressionar botões, digite o texto na barra de pesquisa e clique nos links. O resultado foi um conjunto de ações salvas que você pode executar e ver imediatamente o resultado.
Então eu assisti três palestras do
treinador de automação Mikhail Polyarush:O que é automação de testeComo escrever o primeiro teste no SeleniumComo escrever localizadores no Selenium WebDriverO conhecimento do IDE Selenium e essas palestras foram suficientes para resolver a tarefa do projeto e começar a dar os primeiros passos na automação.
Como eu estudei automação
Logo, comecei a aprender Java - uma das linguagens mais populares para automação de testes - e tentei escrever autotestes simples no Eclipse, por exemplo, para testar o formulário de login dos aplicativos.

Uma vez, meu gerente e eu discutimos meu desenvolvimento futuro. Eu disse que planejava avançar em direção à automação e solicitei cursos sobre testes automatizados para funcionários.
Nos seis meses seguintes, trabalhei e estudei - à noite, fins de semana, feriados. Tudo ficou complicado pelo fato de nos primeiros três meses eu estar em uma viagem de negócios em um novo projeto. Depois do trabalho, voltei ao hotel com o pensamento de que, se não entregasse a lição de casa a tempo, acumularia dívidas pelas quais poderia ser expulso. Para mim, foi um estresse terrível e até perdi alguns quilos.
Aqui está o que me ajudou a superar dificuldades:
• Compreender por que isso é necessárioApesar do estudo ser difícil e, às vezes, até chato, eu percebi claramente que oportunidades me abririam. Por isso, dediquei todo o meu tempo livre à automação. Em vez de andar pela cidade - automação, em vez de reuniões em um bar com colegas - automação, em vez da série noturna - automação.
Suporte para colegas
É sempre bom quando alguém te anima - especialmente as pessoas que já seguiram o mesmo caminho.
• Um senso de competição
O sentimento de que eu poderia me tornar o aluno mais atrasado do grupo também me incentivou a seguir em frente.
Quando os cursos terminaram, comecei a trabalhar no projeto, alternando as funções de testador funcional e engenheiro de automação. Alguns meses depois, ingressou no novo projeto - já no papel de líder de equipe. A equipe de controle de qualidade consistia em apenas duas pessoas - eu e um testador funcional, para quem expliquei o básico da automação.
Como comecei a ensinar automação
Meu colega de projeto é a primeira pessoa que comecei a ensinar automação. No começo, meu conhecimento nem sempre era suficiente para responder às perguntas dele e ajudar a resolver problemas de design. Mas quando não pude explicar algo para ele, percebi que não desenvolvi o suficiente no assunto e aprimorei meu conhecimento. Normalmente, eu procurava respostas no
Stack Overflow ou recorria aos desenvolvedores para obter ajuda.
Gradualmente, minha equipe cresceu para 10 de automação. Naquela época, eu me afastei completamente dos testes manuais e participei de um autoteste complexo de aplicativos da Web em todo o sistema. Então, ele começou a ajudar a equipe na criação de soluções arquitetônicas para testes e se tornou o coordenador do projeto.
Seis meses atrás, meus colegas e eu organizamos nosso próprio centro de treinamento para autoteste no escritório. Eles começaram a cursar os alunos dos últimos cursos e as pessoas que decidiram mudar o escopo da atividade de treinamento.
Recentemente, eu mesmo fiz um pequeno curso - em JavaScript - e me conectei a um novo projeto. Eu nunca me deparei com JS antes. Levei cerca de um mês para começar a me sentir mais ou menos confiante em trabalhar com o novo idioma.

Resumindo minha experiência, posso dar alguns conselhos para iniciantes que estão dando os primeiros passos na automação.
• Comece com a prática - crie seu próprio autotesteMuitas pessoas pensam que, antes de escrever autotestes, primeiro você precisa entender a teoria dos testes e aprender Java ou outra linguagem de programação. Geralmente, o entusiasmo de tais pessoas não dura muito, porque é um processo longo e complicado.
Eu acredito que você precisa começar com coisas simples. Crie você mesmo um autoteste simples. Para torná-lo mais interessante, tente resolver algumas tarefas da vida. Por exemplo, escreva um script que automatize a transferência de leituras do hidrômetro para o local de uma concessionária de água. Hoje, isso pode ser feito com o
Katalon Studio , que substituiu o IDE Selenium. Tais tarefas alimentam o interesse no estudo da automação. Em seguida, será possível prosseguir com o estudo da teoria e das especificidades da automação e também começar a dominar a linguagem de programação em conjunto com o
Selenium WebDriver .
• PriorizarSuponha que você entenda que deseja se desenvolver como engenheiro de automação de testadores e esteja pronto para passar algum tempo estudando. Se você planeja mergulhar completamente no treinamento e não treiná-lo por muitos meses, você deve deixar seu emprego atual ou pedir ao seu chefe longas férias.
Você pode seguir meu exemplo e tentar combinar estudo com trabalho. Você economiza seu salário, mas por vários meses esquece completamente a existência de tempo livre.
• Comece por conta própria ou faça cursos
Os cursos são uma boa opção para aqueles que não têm idéia de por onde começar ou que desejam organizar seus conhecimentos. Os cursos on-line podem ser encontrados em
Otus ,
Stepik ,
GeekBrains ,
Lynda ,
JavaRush . Se falamos de treinamento offline, ele pode ser organizado por várias empresas de TI em sua cidade: o
centro de treinamento EPAM , por exemplo, opera em seis cidades russas.
Normalmente, o programa de qualquer curso de automação é dividido em três módulos:
1. Introdução à teoria da automação;
2. Aprender o básico de uma linguagem de programação (por exemplo, Java);
3. Escrevendo seus próprios autotestes.
Este, na minha opinião, é um algoritmo universal para estudar a automação de testes. Você também pode tomá-lo como base, se tiver um conhecimento técnico e decidir entender de forma independente os conceitos básicos de automação.
Aqui está o conjunto mínimo de conhecimentos que você deve dominar para começar a trabalhar em projetos reais:
• Compreensão dos conceitos básicos de teste: casos de teste, defeitos, etc;
• Compreender o que pode ser automatizado e o que não é;
• Conhecimento dos conceitos básicos de uma linguagem de programação (Java, JavaScript, Python, C #);
• Capacidade de trabalhar com o
Selenium WebDriver ;
• Capacidade de escrever
localizadores para elementos ;
• Conhecimento de uma ou duas estruturas de unidades.
• Seja o mais interessado possívelIniciantes em automação costumam se assustar com erros no código. Eles executam o código, vêem como algo dá errado e caem em um estupor. O que fazer em tal situação? Tente encontrar uma solução na Internet, por exemplo, no mesmo
estouro de pilha . Outra opção é pedir ajuda a colegas mais experientes. Eles também estavam no seu lugar e cometeram os mesmos erros. Ao discutir uma tarefa com engenheiros de automação experientes, você expande seus horizontes profissionais.
• Não fique paradoPara manter a forma, você precisa estar constantemente na vanguarda. Introduzir novas estruturas e bibliotecas, entender a Integração Contínua, aprofundar seu conhecimento da linguagem de programação ou dominar uma nova, leia artigos e blogs temáticos:
Um artigo sobre quem é uma boa ferramenta de automaçãoNotas do Automator (práticas recomendadas para testar a automação)Community AutomatorsPortal sobre teste e qualidade de softwareComunidade de controle de qualidade Comaqa.byNos cinco anos e meio em que trabalho com automação, nunca me arrependi de ter escolhido essa direção. Eu gostava de executar tarefas de teste manual, mas percebi que mais cedo ou mais tarde chegaria ao teto. O limite para o gerente chega quando ele testa diferentes tipos de aplicativos - Web, desktop, celular - de forma tão profissional que o trabalho deixa de gerar novos desafios e se transforma em rotina. Para não ficar parado e se desenvolver ainda mais, você precisa adquirir novas habilidades. Você pode automatizar testes funcionais ou de carga, alternar para testes de segurança ou, por exemplo, classificar bancos de dados. Você também pode olhar na direção do DevOps, análise de negócios ou
gerenciamento de projetos .
Eu, como testador manual, não consegui alcançar meu teto - a automação me fascinou mais cedo. Ao mesmo tempo, o histórico do manual me ajuda muito em meu trabalho todos esses anos. Não apenas implemento casos de teste, mas geralmente escrevo scripts para eles. Então, eu entendo o que estou testando, que tipo de funcionalidade estou cobrindo e que tipo de resultado estou esperando.