No ano novo, muitos fazem um balanço, analisando o ano passado, lembrando todos os resultados e fazendo planos para o futuro. Na 12ª edição do nosso calendário, Anastasia Ronzhina, testadora do serviço Kontur.Market , falará sobre por que você deve tentar algo novo, mudar seus pontos de vista, abordagens, cometer erros e tentar novamente.

Por que eu preciso disso?
Está tudo bem comigo, eu trabalho bem, eles me elogiam, por que devo mudar alguma coisa? É uma pergunta lógica. Em resposta, uma citação do livro "Alice through the Looking Glass":
Você precisa correr o mais rápido possível para permanecer no lugar, mas para chegar a algum lugar, você deve correr pelo menos duas vezes mais rápido!
Enquanto estamos sentados e apenas testando quebra-cabeças, o mundo não pára. James Bach e Michael Bolton realizam outro estudo e buscam abordagens sobre como testar com alta qualidade em pouco tempo.
O lugar do testador no processo de desenvolvimento está evoluindo e os próprios processos. Por exemplo, Maxim e Irina da nossa empresa conversaram sobre a evolução dos autotestes , sobre como você pode acelerar o desenvolvimento usando testes e mudando atitudes sobre quem deve escrevê-los e em que estágio. Lena e Hilaria conversaram sobre como você pode alterar suas ferramentas, conectar-se à comunicação com o usuário, preparar TK e protótipos para melhorar a qualidade do produto.
Fico muito triste quando ouço novamente a opinião de que um testador pode atingir seu limite em 1,5 anos e, em seguida, em automação ou em uma mudança de função para gerente, analista, desenvolvedor, etc. Repetição de algoritmo: leia análises, analise protótipos, teste, erros publicados, erros verificados duas vezes - é fácil entender por que você está cansado e desapontado com a profissão. É apenas chato!
Mas quando você altera abordagens para o estudo do problema, abordagens para a geração de testes, métodos de teste, então:
- Primeiro, você encontra algo que permite testar mais rapidamente, algo que permite realizar uma análise aprofundada dos recursos e não perder nada. Acho que ninguém se recusará a melhorar o trabalho e a aparência do tempo livre :).
- Em segundo lugar - é realmente divertido! Pessoalmente, é muito difícil para mim executar tarefas típicas com um algoritmo padrão todos os dias.
Você pode cavar um tópico específico e se tornar um especialista restrito. Você pode crescer em largura. Com o tempo, as pessoas serão atraídas para você, porque de repente você começará a responder perguntas do "seu tópico". Você pode ser chamado para outras equipes para configurar um processo ou alguma ferramenta, para ensinar alguma coisa. Outro lucro - com seu interesse, seu conhecimento, você pode inspirar outros colegas a se desenvolver, o que significa que haverá ainda mais testadores bons no mundo :).
O que exatamente pode mudar a abordagem?

1. Artefatos ou documentação de teste
Em algum lugar, cada um de nós corrige um plano de teste, decomposição de tarefas, esquema de operação do produto, instruções, bugs, acordos. Pode ser um pedaço de papel, um arquivo em um computador ou algum tipo de programa. Criamos casos de teste, listas de verificação, cartões inteligentes, tabelas, gráficos, diagramas, instruções ...
O que você deve pensar é sobre os objetivos: para quê e para quem você está fazendo isso? A documentação de teste é um produto ou uma ferramenta? Quão rápido o seu produto está mudando? E qual é o fluxo de novos testadores? Há um maravilhoso conjunto de perguntas descritas na lição 148 de Lições aprendidas em testes de software: uma abordagem orientada ao contexto , Cem Kaner, James Bach e Bret Pettichord. Se você não tem um livro em mãos, há uma tradução desta lição.
Eu vi autotestes em uma equipe - como a principal documentação autossuficiente, por que não?

2. Técnicas de Teste
Este é provavelmente o ponto mais óbvio, mas sem ele. Diga-me honestamente, que técnicas você está usando atualmente? Não, você não sabe, basta se inscrever! Há quanto tempo você tenta encontrar algo novo?
Costumo constatar que os testadores conhecem a teoria do design de teste, mas, por algum motivo, não a aplicam e testam, como aprenderam no nível da intuição, talvez por hábito ou após tentativas malsucedidas de usar as técnicas. Caner teve uma boa idéia na lição 26 do mesmo livro:
A intuição é um bom começo, mas uma péssima conclusão (a intuição é boa para começar, mas ruim no final).
Sim, no começo esse talento nos salva, tropeçamos ao testar bugs, parece que conseguimos. Mas com o tempo, erros perdidos começarão a chegar do campo de batalha. Por exemplo, de repente acontece que, ao combinar valores específicos dos parâmetros, algo acontece errado ou, com alguma ação, o objeto mudou repentinamente para um novo estado, mas não percebemos isso durante o teste. As técnicas permitirão evitar tudo isso, permitirão testar com mais eficiência, você poderá resolver tarefas mais rapidamente e melhor.
Alexei Barantsev tinha uma analogia muito boa com a orientação. Quando você aprender a navegar no terreno (intuitivamente usando técnicas, sem saber), depois de estudar os mapas e modelos, será ainda melhor em navegar. Novas técnicas lhe darão novas oportunidades para se deslocar na área. Por exemplo, eu aprendi escalada - agora você não pode apenas dar a volta na montanha, mas também escalá-la. No início, é muito difícil aprender técnicas, enquanto você as estuda, mas com o tempo você as treina e as usa na máquina.
Onde posso encontrar novas idéias sobre tecnologia? Leia ou, se você já leu, leia o livro Um Guia do Profissional de Design de Teste de Software, Lee Copeland , ou leve um colega, escolha qualquer tour de teste Whittaker ( Teste de Software Exploratório: Dicas, Truques, Tours e Técnicas para Orientar o Teste Design, James A. Whittaker ) e 'viaje' com seu produto. Evite os velhos tempos e inscreva-se em um curso de design de teste. Experimente!

3. Técnicas para analisar e gerar idéias
Sim, sim, é a análise de toda a formulação do problema, o estudo da funcionalidade, o estudo do objeto de teste. Se voltarmos à discussão da intuição, o motivo para ignorar erros ainda pode ser uma tarefa insuficientemente analisada, informações coletadas de maneira incompleta. O que pode ser mudado aqui?
Você pode estudar o que são oráculos de teste . Certamente você descobrirá uma nova fonte de informação. Ou, se você já os conhece, procure, por exemplo, o produto do seu concorrente e aprenda como seus recursos são implementados lá.
Procure técnicas de análise, modelagem de estudo, porque testamos de acordo com a nossa idéia do programa, de acordo com o nosso modelo. Pegue os objetos do seu sistema e faça uma análise no sensoriamento remoto (ações - parâmetros - valores).
Primeiro, selecione todos os objetos que você possui, pinte todas as ações que você pode executar nesses objetos, depois os parâmetros que afetam as ações e, em seguida, os valores específicos dos parâmetros.
Leia livros de Edward De Bono sobre como pensar e inventar soluções personalizadas. Pegue o livro " Rice Assault " e treine seu cérebro. Todos os dias tentamos resolver tarefas, desenvolvemos e o que mais poderia afetar nossa tarefa. O treinamento o ajudará a fazê-lo de maneira mais rápida e produtiva.

4. Ambiente e processos
Não estou falando de uma mudança de equipe ou empresa, embora em algumas situações, por que não? :) Eu queria falar sobre o que há nos testes.
Pegue e altere seu navegador favorito ou a resolução da tela. Se você estiver testando um aplicativo Web, tenho certeza de que você vê o produto de maneira diferente.
Altere o Microsoft Visual Studio para JetBrains Rider (ou vice-versa). Tente usar uma ferramenta de teste de API diferente. Explore outras soluções, é bem possível que algo novo e mais conveniente para você tenha aparecido.
Você obtém constantemente uma ramificação para testar onde o projeto não está indo ou em que você encontra erros nos primeiros minutos? Ou você sempre encontra muitos bugs? E, ao mesmo tempo, você também tem uma grande fila para testes? Estude as heurísticas de interromper o teste (sim, você pode simplesmente pegar a ramificação bruta e envolvê-la de volta), alterar os requisitos para a ramificação na entrada, envolver colegas nos testes. Ou talvez alguns ramos não precisem realmente de teste, o desenvolvedor já verificou tudo sozinho?
E, às vezes, é muito útil levar e transferir para o outro lado da sala, mais perto dos desenvolvedores ou de outros testadores. Uma mudança de local ajudará a atualizar a aparência do trabalho.

5. Papel e responsabilidades do testador
Meu favorito Explore quem é o testador em equipes vizinhas, em outros projetos ou mesmo em outros países. Tivemos uma entrevista com James Bach na conferência DAMP, e algumas das respostas foram simplesmente surpreendentes. James tem uma idéia completamente diferente de quem é o testador, se há máquinas automatizadas e qual é a coisa mais interessante sobre o teste!
Vá para algumas entrevistas. Apenas vá. Você aprenderá o que está acontecendo em outras empresas, o que é valorizado pelos testadores, o que é esperado deles.
Você ainda está decidindo se deve liberar ou não? Ou o que os gerentes costumam fazer? Leia o livro de Jerry Weinberg Software Perfeito e Outras Ilusões Sobre Testes e ele vai virar o mundo de cabeça para baixo! E então, deixe seu gerente ler.
Você acha que a garantia da qualidade é de responsabilidade do testador? James Bach na mesma entrevista deu um bom exemplo de um guarda em uma base militar.
Claro, você pode simplesmente proteger a base e também pode estudar por que as pessoas querem penetrar nessa base, fazê-lo como uma disciplina em uma escola militar. Isso significa que você não pode proteger a base? Claro que não! Alguém deve guardar. Mas, já em relação ao teste, se você estudar e começar a implementar algo que reduzirá o número de bugs, sim, você pode reduzir o número de "guardas".
Sobre o tema de garantir a qualidade e o crescimento do testador na mesma conferência, houve um bom relatório de raciocínio da Maxim.
Você ainda acha que existem automação e testadores manuais? Ouça James , ouça um relatório sobre como apenas os desenvolvedores escrevem em um projeto de autotestes ou como o papel de um autotestor evoluiu em uma equipe e agora todos na equipe escrevem autotestes e fornecem uma ramificação apenas com testes verdes, incluindo novos testes de recursos .
Que tipos de teste você faz? Apenas funcional? E você pode responder - por quê? E quem é responsável por outras espécies? Pense, talvez você veja algum tipo de espaço.
Aprenda outras funções, por exemplo, como escrever análises (" Métodos modernos para descrever os requisitos funcionais para sistemas " de Alistair Coburn), quem é esse gerente e o que deve fazer ("Adizes ' Líder ideal "). Isso permitirá que você entenda melhor outros papéis, sua posição. E também desenhe novas idéias.
6. Algo mais
Os testadores conversam muito com os outros e escrevem muito. Temos que explicar erros ou tentar fazer perguntas quando surgimos com uma situação terrivelmente complicada. Portanto, desenvolva essas habilidades. Por exemplo, há um bom livro de Maxim Ilyakhov e Lyudmila Sarycheva - " Write, Cut ". Basta pesquisar por tópicos em sites de editores ou lojas .
Outra idéia inesperada - você pode testar a si mesmo! Ou o seu desenvolvimento! Como Ekaterina Bobrova .

O que está nos impedindo
Vejamos os fatores de parada mais populares que nos impedem de tentar uma abordagem diferente.
Sem tempo
Este é provavelmente o mais simples. Vá para um curso de gerenciamento de tempo, leia livros sobre eficiência. Por exemplo, " Jedi Techniques ", de Maxim Dorofeev.
Não sabe como dar o primeiro passo
Destaque um horário específico, uma tarefa específica, você pode começar mesmo com 15 minutos. E nesses 15 minutos, desenterre seu tópico, tente algo diferente. Não é necessário tentar tudo o que aprendeu imediatamente. Escolha 1-3 novas práticas e tente fazê-las. O principal é fazer isso todos os dias. Tais pequenos passos levarão a ótimos resultados. Há mais informações sobre isso no webinar com Ekaterina Lengold .
Medo de erros
Acho que cada um de nós tinha medo de tomar uma decisão, de tentar algo pela primeira vez. E se eu não tiver competências suficientes e tomar uma decisão errada, decepcione o projeto e meus colegas? Deve-se lembrar que os erros são a norma para o processo de aprendizagem. Entendemos neles como não fazê-lo, o que significa que agora sabemos para onde ir. Lembre-se da história da invenção da lâmpada. Edison realizou cerca de 2.000 experiências antes de alcançar o sucesso.
"Diga-me, Sr. Edison, como é falhar duas mil vezes seguidas, tentando criar uma lâmpada?"
"Jovem", respondeu Edison, "não me enganei duas mil vezes ao criar esta lâmpada". Descobri mil novecentos e noventa e nove maneiras de não fazer uma lâmpada.
No livro “ 100 maneiras de mudar a vida. Parte 2 ”Larisa Parfentieva fala sobre sobrecarga de informação. Com o tempo, adquirimos conhecimento e isso nos impede de lidar rapidamente com as tarefas, tomar decisões, tentar algo novo e correr riscos. Porque antes de tentarmos, começamos a analisar, pensar em tudo nos mínimos detalhes e ... no final, nunca tentamos.
A solução é simples - comece pelo menos com alguma coisa. Basta escolher a primeira técnica e tentar. Ou mais tarde você perceberá que estava enganado - e este é um bom resultado, agora você tem experiência e novas informações. Nesse caso, adote a seguinte técnica, abordagem. Ou a tecnologia decola e você também ganha. Quando a própria escritora tem essa paralisia, ela diz para si mesma: "Sim, não se importe!" e começa a escrever a primeira coisa que vem à mente.
E aqui está outra citação de Albert Einstein:
Todo mundo sabe desde a infância que isso e aquilo são impossíveis. Mas sempre há um ignorante que não sabe disso. Ele faz uma descoberta.
Inspiração insuficiente
Pessoalmente, meus colegas, livros sobre testes e não apenas discursos e invenções de colegas de outra cidade, outro país me inspiram. Eu gostaria de alcançar essas pessoas, criar, fazer algo útil e não ficar parado.
No mesmo livro, Larisa Parfentieva compartilha a regra do sucesso para o ator e diretor Harold Ramis.
Encontre a pessoa mais talentosa da sala e, se não for você, fique perto dela. Siga-o em todos os lugares. Tente ser útil para ele. E se um dia acontecer de repente que a pessoa mais talentosa da sala é você, procure outra sala.
Encontre o que lhe dá energia, força, cobra pela mudança e coma!
Se você acha que precisa de um mentor, escreva em um pedaço de papel uma lista de 20 pessoas que podem aparecer, mesmo que sejam os testadores mais famosos, entre em contato com essas pessoas. Alguém de 20 anos definitivamente não o recusará!
No final
Vou citar mais uma citação do livro “ 100 maneiras de mudar a vida. Parte 2 ".
Nas pessoas que alcançam um sucesso extraordinário, não há nada de especial que não esteja em ninguém! São indecisos, duvidosos, reflexivos, muitas vezes enganam-se, caem, sentem-se tristes, se comparam com os outros, não sabem qual decisão tomar e, às vezes, é difícil para eles sair da cama. A única diferença deles é que eles constantemente fazem alguma coisa, apesar de tudo isso.
Experimente novas técnicas, novas ferramentas, invente a sua. Escolha a atividade mais mundana e faça-a conscientemente. Mude processos, revise seus pontos de vista. Crie uma ideia louca e interessante e tente perceber!
Com este artigo, encerramos o ciclo anual “Calendário do testador”, no qual 16 testadores de contorno falaram sobre suas ferramentas, práticas e processos de trabalho. Para muitos deles, foi uma experiência nova, interessante e útil.
O mundo dos testes não se limita apenas à busca de bugs, ele tem muitas faces e neste mundo você pode e deve experimentar. Obrigado por estar conosco :)
Lista de artigos do calendário:
Teste de par razoável
Feedback: como acontece
Otimizar testes
Leia um livro
Teste de análise
O testador deve pegar o erro, ler Caner e organizar a mudança.
Carregar serviço
Métricas de serviço de controle de qualidade
Teste de segurança
Conheça seu cliente
Receber lista de pendências