Bugs em jogos de navegador. Tudo está quebrado: bugs lendários em videogames. Passeios pelo Bairro Turístico, Passeios pelo Bairro Turístico

Bugs em jogos de navegador. Tudo está quebrado: bugs lendários em videogames. Passeios pelo Bairro Turístico, Passeios pelo Bairro Turístico

Descrevendo o método de busca sistemática de bugs por James Whittaker (James A. Whittaker)

Metodologia do passeio

A aplicação é uma cidade desconhecida.
O testador é um turista.


O turista tem pouco tempo, então ele realiza uma tarefa específica sem se distrair com mais nada. Ele está correndo pelo cassino, ou fazendo turismo, ou participando de um seminário de negócios. Qualquer coisa menos uma coisa.

Como usar a técnica

Escolha um passeio na lista abaixo.
Aprenda seus objetivos.
Defina um temporizador para 2 horas (uma hora, meia hora).
Realize um estudo do sistema estritamente de acordo com os objetivos do passeio. Não se distrai com nada, apenas com a “missão” do passeio.
Repita se necessário.

Em cada rodada há uma descrição do autor (curva baixa a James pela permissão para traduzir e publicar) em tradução livre + exemplos próprios. Por exemplo, o site Dadata é usado - https://dadata.ru.

Vamos pegar a estrada!

Business Center Tours, Tours do Business District

Um centro de negócios é um lugar onde os negócios são feitos. Como regra, esta é uma área pouco atraente para os turistas, onde se concentram bancos e edifícios de escritórios.

Na pesquisa de software, o oposto é verdadeiro. O centro de negócios são os recursos para os quais os usuários compram e usam o aplicativo. Esses são os recursos matadores que os profissionais de marketing descrevem e que qualquer um de seus usuários mencionará quando perguntado por que eles precisam do seu aplicativo.

O tour pelo centro da cidade concentra-se nas partes principais de seu aplicativo e mostra como seus clientes as utilizam.

Passeios pelo bairro histórico, passeios pelo bairro histórico

Distritos históricos - partes da cidade contendo prédios antigos e pontos de referência. Em Boston, eles estão espalhados por toda a cidade e conectados apenas por trilhas para caminhada. Colônia tem uma "cidade velha" - uma parte da cidade que não foi tocada pela expansão moderna.

No software, os distritos históricos podem ser tão frouxamente conectados como em Boston, ou concentrados em um só lugar, como em Colônia. Os distritos históricos no software são:

  • código legado (código legado);
  • funcionalidades criadas em versões anteriores;
  • correções de bugs.

Estes últimos são especialmente importantes porque os insetos são criaturas sociais e gostam de se acumular em um só lugar. Seções importantes no código devem ser testadas com cuidado especial.

Passeios de distritos históricos testam funcionalidades antigas e correções de bugs.

Excursões pelo distrito de entretenimento, passeios pelo distrito de entretenimento

A cada férias, os turistas precisam de uma pausa em suas agendas lotadas. Uma visita a um distrito de entretenimento, um show ou um almoço longo e tranquilo fora do caminho principal cria essas pausas. Os turistas vêm ao distrito de entretenimento para recreação, não para atrações.

A maioria dos aplicativos tem recursos semelhantes. Por exemplo, o distrito comercial de um editor de texto é um conjunto de funções para criar um documento, preparar texto, inserir gráficos, tabelas e figuras. Distrito de entretenimento - funções para layout de página, formatação, alteração do plano de fundo. Em outras palavras, o trabalho está em criar o documento, e a diversão está em trazer beleza.

Passeios de distrito de entretenimento exploram recursos secundários em vez de primários e garantem que eles se complementem sem contradições.

Passeios pelo Bairro Turístico, Passeios pelo Bairro Turístico

Cada cidade tem áreas de atração para os turistas. Existem muitas lojas de souvenirs, restaurantes e outros lugares para maximizar o tempo dos turistas e aumentar os lucros dos vendedores locais. Aqui você encontra imãs de geladeira e colecionáveis, mergulhe na atmosfera: experimente a culinária nacional ou os serviços e entretenimento locais.

Os passeios em áreas turísticas têm diversas variedades. São pequenas tiragens para comprar souvenirs, um análogo de casos de teste curtos para testar funções específicas. Isso e longas viagens para visitar a lista de lugares que você deseja ver. Esses tours não são sobre como fazer o aplicativo funcionar, eles são sobre como visitar a funcionalidade rapidamente... apenas para dizer “nós estivemos aqui”!

Passeios pelo distrito hoteleiro, passeios pelo distrito hoteleiro

O hotel é um refúgio para o turista. Este é o lugar para fugir da agitação dos destinos populares para um pouco de descanso e relaxamento.

É aí que entra o testador, afastando-se da funcionalidade principal para testar recursos secundários ou complementares que geralmente são ignorados no plano de teste.

Passeios pelo distrito de Seedy, Passeios pelo distrito de Seedy

Estes são lugares pouco atraentes que um guia raro irá contar. Eles estão cheios de golpistas e personalidades duvidosas, e é melhor evitá-los. No entanto, eles atraem uma certa classe de turistas.

Como encontrar bugs em jogos?

Resposta do Mestre:

Nenhum jogo pode ser considerado completo se não tiver passado por uma análise detalhada. Se os desenvolvedores do jogo ignoraram esse passo, o jogo provavelmente se parecerá com o gótico. Sua terceira versão era geralmente impossível de jogar até que vários patches foram lançados.

Para encontrar bugs no jogo, comece com um teste básico. Ele exibirá a saúde do mecanismo de jogo. Ele, em princípio, deve ser produzido nos estágios iniciais do desenvolvimento do jogo. A essência da verificação é encontrar erros que levem a "jogar fora do jogo". Este tipo de erro deve ser encontrado primeiro, porque são eles que desencorajam todo o desejo de jogar mais.

Teste o jogo em vários computadores com opções diferentes. É importante que todos os PCs tenham placas gráficas diferentes, como GeForce e Radeon. E você também precisa testar o jogo em diferentes tipos de sistemas operacionais para adaptá-lo a diferentes condições.

Agora teste a jogabilidade para encontrar bugs no jogo. Se o jogo passou no primeiro teste e o desempenho do mecanismo combina com você, você pode estudar cuidadosamente o desenvolvimento dos princípios e o equilíbrio do jogo. Por exemplo, se o seu jogo for semelhante ao Dead Space, certifique-se de testar todos os tipos de armas e "chips" dos desenvolvedores. Quando alguns deles se duplicam ou são completamente redundantes, eles precisam ser revisados ​​ou finalizados. Atenção especial deve ser dada à permeabilidade do jogo para que ele possa ser passado mesmo nos últimos níveis.

Teste os jogos em versões beta ou posteriores com mais detalhes. Não há prioridades especiais em tais testes. O objetivo principal é encontrar bugs e vários erros. Se você é um testador, deve tentar todas as táticas possíveis e impossíveis do jogo para completar o jogo, use o número máximo de movimentos, em geral, mostre sua imaginação. Use todas as possibilidades do jogo, mudando constantemente de estilo. Afinal, você precisa descobrir para quais ações do jogador o programa não está adaptado.

Tais testes são feitos principalmente manualmente, porque o computador ainda não aprendeu a ter essa dignidade humana como a fantasia.

Glitches são bugs no jogo (computador, vídeo, aplicativo e assim por diante) que causam alguns eventos no jogo que não deveriam acontecer, de acordo com os planos originais dos desenvolvedores. Por exemplo, você vê um inimigo fugindo quando não deveria, ou talvez seus inimigos tenham se transformado em hologramas e não possam atacá-lo. Na maioria das vezes, as falhas não são muito agradáveis ​​e não desejáveis. Mas às vezes, falhas podem ser úteis, e também podem ser apenas uma descoberta divertida, e nesse caso você pode até querer encontrá-las - boa sorte para encontrar bugs!

Passos

Detecção de falhas

    Preste atenção aos eventos do jogo que não deveriam ter acontecido. Por exemplo, trocar de arma em um momento em que você achava que estava segurando um determinado tipo de arma, trocar de roupa sem sua participação ou mudar de localização quando não esperava. Talvez a gravidade tenha deixado de existir, ou suas ferramentas, armas ou objetos estejam fazendo coisas que não deveriam. Se isso faz parte do jogo ou não - existem várias maneiras de esclarecer isso:

    • Leia uma breve visão geral do jogo. Se for detalhado o suficiente, pode ajudá-lo.
    • Pergunte a um amigo que joga o mesmo jogo. Talvez eles ou ela saiba a resposta para sua pergunta.
    • Fique online e verifique os fóruns do jogo. Veja se mais alguém relatou esta falha. Ou faça uma pesquisa por "X glitch" em um mecanismo de pesquisa se achar que é um bug conhecido.
  1. Em geral, aprenda e pergunte sobre falhas. Verifique sites, fóruns, páginas ou outras informações específicas relacionadas a este jogo. Você pode encontrar um tópico aberto sobre o assunto ou guias para encontrar falhas no seu jogo.

    • No YouTube, muitas vezes, há vídeos sobre falhas em jogos populares.
    • Verifique a data dos relatórios de bugs. Embora as falhas possam existir por um tempo, em jogos reais, depois de alguns meses, elas serão corrigidas.
    • Além disso, leia sobre as consequências de usar a falha - em alguns casos, você pode arruinar seu jogo ou perder coisas.
    • Existem alguns sites dedicados a encontrar falhas no jogo. Alguns deles incluem falhas engraçadas com as quais você pode se divertir, mas nada mais.
  2. Tenha cuidado ao usar falhas em jogos online ou em rede. Em jogos multiplayer, o uso de glitches é desencorajado e é considerado uma forma de interrupção da jogabilidade e pode afetar injustamente outros jogadores. Leia os termos do seu jogo antes de usar qualquer falha. Você pode ser melhor relatar do que usá-lo.

    Zonas e ações típicas de falhas

    Existem áreas mais ou menos padrão onde podem ocorrer falhas. Se você está tentando encontrá-los, então veja as pistas abaixo.

    1. Penhascos e saliências. Se você pode levá-lo para a borda, continue andando e veja onde você pode chegar. Talvez em algum lugar por aí, a programação esteja ficando para trás em qualidade, e você pode cair ou subir onde nunca pensou que chegaria.

      Tente atravessar as paredes. Em alguns jogos, as paredes ficam transparentes durante certos eventos, como mover objetos, conversar com jogadores ou usar ações especiais, como teletransporte. Talvez haja rachaduras ou buracos nas paredes que criem um ponto fraco por onde você possa atravessá-lo.

      • Se você perceber que uma arma, ferramenta ou outro objeto que você está segurando está atravessando uma parede, tente você mesmo. Isso pode ser um sinal de falha na parede ou na zona, nível, mapa ou território em que você está.
    2. Verifique se há objetos grandes. Rochas e outras decorações grandes são muitas vezes o melhor lugar para procurar falhas. Às vezes, os desenvolvedores de jogos ficam preguiçosos e não estabelecem as barreiras certas.

      • Se você caminhar até uma pedra para tentar a falha, então olhe para o lugar mais obscuro nela. O lugar mais “anormal”, que é diferente dos outros, pode ser a chave para passar por isso.
      • Se você é novo em falhas, tente as mais fáceis primeiro, como subir em um telhado, e não tente situações mais difíceis, como atravessar uma parede ou algo assim.
    3. Se você encontrar uma barreira invisível, tente encontrar uma solução alternativa. Barreiras desse tipo geralmente levam a telhados ou outros lugares que os desenvolvedores do jogo não planejavam deixar os jogadores entrarem.

      Procure um local que não seja acessível por meios convencionais. Pergunte a si mesmo: "Eu me pergunto se é possível chegar lá." Pense no que seu personagem jogável pode fazer para chegar ao local desejado, como caixas, cordas, galhos de árvores, cangurus pulando - o que for! Experimente todas as opções - você não saberá até tentar.

      • A maioria das falhas aparecem em áreas que não deveriam ser reproduzidas.
    4. Jogue o jogo "errado". O teste de jogo ocorre durante o jogo “correto”, seguindo um cenário com um resultado esperado. Você pode mudar isso e jogar de maneiras que não foram intencionais, como abordar as coisas de uma maneira ou ângulo diferente, tentar inverter coisas normais ou empurrar limites onde outros jogadores não pensariam nisso.

      • Se você não tem medo da morte no jogo, pode encontrar algumas falhas engraçadas!
    5. Tente bater em pausa. Talvez em ação, pressionando pausa, você possa provocar ou mudar algumas coisas. Apenas tente. Esse movimento provavelmente funcionará em jogos mais antigos.

    Faça uma nova busca pela falha

    E assim, você decidiu que a falha que encontrou era divertida e, agora, quer usá-la novamente...

    • O Wii nunca recebe atualizações, então se você está procurando uma falha imutável, então jogue o Wii. No entanto, a maioria das bordas nos jogos de Wii são paisagens e você não pode escalá-las.
    • Aprenda a pular com mais precisão. Aterrissar no alvo certo é uma habilidade valiosa. Saltos repetitivos (estilo lebre) às vezes podem levar você a uma das falhas.
    • Se o obstáculo não estiver disponível, tente escalar a borda em vez de tentar escalar o centro.
    • Tente mover outro personagem ou animal para algum objeto e depois passe por essa pessoa ou animal. Use um personagem ou animal para escalar coisas e para outros fins.
    • A maioria dos objetos são paisagens. Se você tentar pular do telhado do prédio para o outro lado, provavelmente começará a cair.
    • Use saltos especiais ao tentar saltar mais longe do que o normal. Se você está tentando fazer um salto correndo para algum lugar, depois de cada salto, deixe-o recarregar e veja se isso o ajuda.

Há engenheiros de controle de qualidade que encontram muitos bugs, e há aqueles que encontram muitas vezes menos. Depois de muitos anos pensando em como é que consigo encontrar várias vezes mais bugs do que outros (e como os outros conseguem encontrar mais do que encontrei), formulei uma lista de dicas, após a qual quase qualquer um pode encontrar um monte de erros.

Essas dicas são muito simples e comprovadas por muitos anos de prática por muitos engenheiros de controle de qualidade com quem discuti como eles procuram e encontram bugs:



Concentre-se em encontrar bugs
Tenha sempre em mente o pensamento "então, em algum lugar existem bugs e eu tenho que encontrá-los agora". Bugs estão definitivamente lá, e você vai encontrá-los.

Não perca nenhum bug(não ignore erros)
Se você perceber que algo está errado - escreva imediatamente um relatório de bug. Você descobriu como fazer melhor? - Documente sua ideia enquanto você se lembra dela. Como resultado, você terá mais bugs encontrados e nada será perdido.

Tenha sessões curtas de busca de bugs
Reserve de 30 a 120 minutos uma vez por dia ou uma vez por semana - quando você tomar café / cacau / chá, coloque os fones de ouvido e procure por bugs, sem se distrair com nada (sem correio, conversas com colegas, bate-papos, redes sociais - tudo desligue e feche as abas - e abra o aplicativo que estamos testando).

Faça essas sessões regularmente, isso também é importante. E, ao mesmo tempo, não se esqueça das duas primeiras regras.

Ler/Aprender Teoria de Testes e Design de Testes
Pessoas inteligentes há muito pensam em tudo e descrevem em livros, não menos pessoas inteligentes escrevem blogs, livros e falam em conferências sobre esses tópicos.

Você precisa dessas informações, e mais do que isso - você não deve apenas ler sobre isso, mas pensar sobre isso - como cada prática de teste se originou, onde é aplicável e onde é mais eficaz, como aplicá-la ao seu projeto.

Cerca de dez anos atrás, se você começasse a trabalhar como engenheiro de controle de qualidade, poderia se dar ao luxo de não saber sobre a teoria dos testes nos primeiros meses. Hoje, isso é o que você será perguntado em qualquer entrevista, mesmo antes de começar a testar algo)).

Testar programas diferentes
Não se limite a testar uma coisa, por exemplo, testar o projeto em que está trabalhando atualmente. Tente testar sites de e-mail, pizzarias, centros de solicitação de visto, cinemas online, aplicativos móveis ou qualquer coisa que você use com frequência ou ache interessante. Aprenda como funciona, quais problemas típicos são encontrados em diferentes recursos, quais bugs são encontrados em geral e quais você encontra mais rápido.

Conecte-se com outros QAs
Converse com outros engenheiros de controle de qualidade, deixe-os contar suas histórias de encontrar um bug às três da manhã ou como eles colocaram algo em produção sem testar. Ou histórias sobre qual framework eles escreveram em seu projeto e quais bugs esse framework permite que você encontre. Ao mesmo tempo, você nem precisa interagir com as pessoas - assista a vídeos do youtube com discursos de outras pessoas, participe de conferências / encontros / encontros / noites temáticas, inscreva-se em bate-papos e blogs de controle de qualidade - há muito material desse tipo, algo novo aparece todos os dias.

Toda essa comunicação e informação lhe dará um banco de dados constantemente atualizado, a partir do qual a rede neural em sua cabeça construirá intuição, que o ajudará a encontrar bugs onde você mesmo não espera encontrá-los conscientemente.

Meditar
Pense em por que as pessoas não podem escrever código sem bugs, por que é impossível encontrar todos os bugs e por que até mesmo alguns bugs em produção são normais e não críticos (mas não tenho certeza). Pense em diferentes questões relacionadas a bugs - formule suas próprias filosofia sobre tais perguntas, procure respostas, respalde as respostas com histórias da vida real. Se o seu cérebro continua voltando a esses pensamentos, com o tempo você muda seu pensamento e começa a encontrar mais e mais bugs e a fazer mais e mais testes e verificações legais.

Faça algo novo
Marque as áreas do projeto que você testou bem e concentre-se no teste passo a passo das áreas que você ainda não testou. Alterne periodicamente entre as áreas do projeto e os métodos de teste. Você já faz testes funcionais há meio ano? - encontre uma oportunidade de 2 a 3 semanas para elaborar testes de carga ou design de teste (não verificações, mas planejamento) ou, por exemplo, escreva alguns autotestes para as áreas mais críticas, ainda não cobertas, apenas para mudar e deixar sua mente olhar em suas tarefas habituais de um ângulo diferente.

Automatizar
Sério, há pessoas (e às vezes há bons QAs entre eles) que fazem os mesmos testes à mão todos os dias (um caso muito triste - verificar login/registro, todos os dias, à mão). Se você se reconhece nesta descrição ou está pensando em automatizar algo do seu trabalho diário há muito tempo - faça isso, faça uma pausa em todas as tarefas e scripts (mesmo que seja um script muito desajeitado e simples).

Seu cérebro não gosta de ações repetitivas, ele as desliga. E você precisa dele para encontrar um bug! Use seu cérebro, mantenha-o constantemente à procura de inconsistências com suas expectativas.

Faça verificações repetidas em scripts automáticos e deixe seu cérebro e sua intuição trabalharem com algo novo e novo, novos bugs aparecerão imediatamente, você verá.

Comunique-se com desenvolvedores e usuários
Pense em uma maneira de se comunicar com seus desenvolvedores e usuários do seu produto. Leia suas análises, pergunte à equipe de suporte sobre problemas, seja voluntário para lidar com relatórios de bugs de usuários ou trabalhe com a equipe de suporte por algumas horas por semana (ou apenas peça para ser adicionado ao bate-papo).

Às vezes, os problemas mais importantes você encontra no momento da comunicação com outras pessoas. E esses recursos de implementação, novos recursos e a dívida técnica que o programador lhe contará são excelentes motivos para pensar sobre onde mais os bugs estão escondidos.

As histórias de usuários sobre como eles usam o sistema também são um ótimo motivo para revisar seu plano de teste/listas de verificação e garantir que você esteja testando os principais cenários de usuários reais. Afinal, isso é o mais importante! E bugs podem ser encontrados em todos os lugares :)

PS: QA Battle - para quem gosta de procurar bugs e quer praticar a descoberta do maior número possível de bugs. No momento, estamos trabalhando em uma série de tutoriais simples com exemplos de onde bugs reais podem se esconder. Ao treinar em tais quebra-cabeças, você bombeia sua habilidade e seu cérebro já funciona intuitivamente com mais eficiência quando você testa produtos reais.

Boa sorte na sua pesquisa :)

Assim dado: projeto de desenvolvimento de um simulador interativo online, fase de produto - beta aberto.
Tarefa: rápido e barato possível encontrar bugs que interfiram no lançamento, corrigi-los e entregar o produto ao cliente.

Para resolver o problema, foi desenvolvido um esquema no qual os testadores freelance envolvidos são motivados a encontrar o maior número possível de bugs, enquanto o orçamento total não excederá o valor definido antecipadamente.

Isto foi conseguido através da introdução pagamento dependendo do número e categorias de bugs encontrados. Também instalado valor máximo de pagamento, para que você possa decidir antecipadamente sobre o orçamento máximo, mas para que o testador não pare depois de atingir o valor máximo, ele introduziu bônus, que é adicionado ao pagamento se este testador encontrar bugs que valem mais do que todos os outros.

A experiência acabou sendo muito positiva, tanto para o projeto quanto para os testadores. Para o teste foram utilizados 2 cenários, ocorreu no final de semana, e na segunda já tinha 84 bugs (3 categorias A, 15 - B, 62 - C e 4 - D), desenhados de acordo com os requisitos. Depois de corrigir todos esses bugs, o produto foi lançado.

A propósito, quando eu estava preparando uma tarefa para freelancers, não consegui encontrar uma descrição adequada das categorias de erros na Internet, então eu mesma a compilei. Talvez seja útil para alguém:

  • Categoria A (I). A presença de erros nesta categoria bloqueia o acesso do usuário às principais funcionalidades do produto. Podem tratar-se de erros relacionados com o registo, autorização e/ou erros, cuja ocorrência impede o utilizador de avançar no curso, independentemente do seu estado atual.
  • Categoria B (II). Restringir o acesso a alguma funcionalidade que não afete a conclusão do produto ou impeça o usuário de progredir no curso, dependendo das etapas anteriores realizadas por ele, obrigando-o a iniciar novamente alguma parte do curso.
  • Categoria C (III). Erros nesta categoria não afetam diretamente o processo de uso do produto, mas pioram a integridade de sua percepção ou impressão do processo. Isso inclui erros de layout, exibição e posicionamento incorretos de elementos gráficos, reação lenta dos controles, etc.
  • Categoria D (IV). Erros nesta categoria não são, de fato, erros. A categoria foi introduzida para que o erro possa ser atribuído se estiver relacionado à funcionalidade, visualização e outras propriedades do produto, a ideia da implementação que o testador possui é diferente do que deveria ser implementado.
Se alguém tiver alguma dúvida sobre o conteúdo do post, ficarei feliz em responder.

Obrigado pela sua atenção!