O documento discute técnicas de teste para jogos digitais. Primeiramente, apresenta conceitos sobre jogos digitais, testes de software e características de jogos. Em seguida, descreve técnicas como combinatorial testing, test flow diagrams, cleanroom testing e test trees que podem ser usadas para criar e executar testes de jogos de forma sistemática. Finalmente, exemplifica a aplicação dessas técnicas no teste de um jogo fictício.
1. LBI - Microsoft
TÉCNICAS DE TESTE PARA JOGOS
DIGITAIS
Luana Lobão
ext-luana.lobao@microsoft.com
www.indt.org
2. LBI - Microsoft
INDT
Jogos Digitais
Testes de Software
Testes para Jogos Digitais
Técnicas de Teste para Jogos Digitais
Por onde começar? Sugestões!
Agenda
3. LBI - Microsoft
Instituto de pesquisa e
desenvolvimento (P&D)
independente e sem fins
lucrativos que visa gerar
novos conceitos, produtos, e
soluções em áreas ligadas
às tecnologias móveis e
Internet
Instituto de Desenvolvimento Tecnológico
Manaus
Recife
Brasília
São Paulo
5. LBI - Microsoft
Movimentou em torno de US$ 1,3 bi em 2014 (mundial)
Brasil é o maior mercado em Games da América Latina
Criação de políticas públicas em andamento
Maioria dos jogos desenvolvidos são para PCs, Web e
dispositivos móveis
Mais de 70% dos consumidores de jogos estão na
plataforma móvel
Mais de 15,1 milhões de aparelhos móveis foram
vendidos no último semestre (2014)
Jogos Digitais – Mercado
BNDS (2014) Relatório Final – Mapeamento da Indústria Brasileira e Global de Jogos Digitais
IDC Releases (2014) Estudo da IDC Brasil mostra recorde nas vendas de smartphones no terceiro trimestre de 2014
6. LBI - Microsoft
Segundo Huizinga (1993)
O jogo é uma atividade ou ocupação voluntária
Exercida dentro de limites (determinados) de tempo e de espaço
Guiado por regras livremente consentidas
Dotado de um fim em si mesmo
Acompanhado de um sentimento de tensão e de alegria e de uma consciência de ser
diferente da vida cotidiana
Software especial, pois conta com vários elementos em sua construção (Clua
& Bittencourt, 2005
Aspectos funcionais (regras envolvidas)
Não funcionais (divertimento, por exemplo)
Jogos Digitais – O que é?
CLUA, E., BITTENCOURT, J. Desenvolvimento de Jogos 3D: Concepção, Design e Programação. Anais da XXIV Jornada de Atualização, pp. 1313-1356, São Leopoldo, Brazil, Julho de 2005
HUIZINGA, J. Homo Ludens. 4a ed. São Paulo: Perspectiva, 1993.
7. LBI - Microsoft
Atividade multidisciplinar
Várias áreas envolvidas
Produção, design, arte, programação, áudio, testes e controle de
qualidade e marketing
A natureza é complexa
Quantidade e variedade de recursos envolvidos
Gráficos, sons, redes, inteligência artificial, matemática , física,
conexão, memória, etc
Alta frequência de atualização de dados
Interatividade instantânea
Jogos Digitais – Características
Blow, J. Game Development: Harder thank you think. Queue, ACM, New York, USA, v. 1, n. 10, p. 28-37, 2004.
8. LBI - Microsoft
Jogos – Classificação
Dimensionalidade
2D e 3D
Ponto de Vista
1º ou 3º pessoa
Gênero
Ação, Aventura, Estratégia, RPG, Esporte,
Simulação, Tabuleiro, Quebra-cabeças
Número de Jogadores
Single player, multiplayer e massive player
VILLAS, B. R. Mercado de Jogos. In: AZEVEDO, Eduardo (org.). Desenvolvimento de jogos 3D e aplicações em realidade virtual. Rio de Janeiro: Elsevier, 2005
9. LBI - Microsoft
Define gameplay (jogabilidade), controles,
interface, personagens, inimigos,
especiais, fases…
Descreve todas as características do jogo
Decide o que o jogo deve fazer
Game Design Document (GDD): descreve
as características do Game Design em
detalhes
Jogos Digitais – Game Design (1)
10. LBI - Microsoft
Modelo formado por uma
“tétrade elementar”
Constituem elementos essenciais
para a definição do Jogo
Tecnologia (ambiente...)
Mecânica (Personagens, ação,
interação entre eles...)
Estética (Parte visual inteira...)
Enredo (História...)
Jogos Digitais – Game Design (2)
Tecnologia
Estética
Enredo
Mecânica GAMEPLAY
Schell, J. A arte de game design: o livro original. Rio de Janeiro: Elsevier, 2011.
11. LBI - Microsoft
Teste de Software (1)
Um processo ou conjunto de processos que após
executados de forma sistemática ajudam a dar
certeza que um programa de computador faz o que
ele foi projetado para fazer.
Glenfor J. Myers
12. LBI - Microsoft
Teste de Software (2)
Teste de
Aceitação
Teste de
Sistema
Teste de
Integração
Teste Unitário
Bottom
up
Top
Down
Big
Bang
Funcionais
Não
funcionais
Regressão
Usabilidade
Teste
Fumaça
Performance,
Carga e Stress
Segurança
Manutenção …
Alfa Beta OAT UAT
NÍVEIS TIPOS ABORDAGENS
…
TÉCNICAS
Estáticas
Dinâmicas
Modelagem
13. LBI - Microsoft
Teste de Software (3)
Estáticas
Dinâmicas
Modelagem
Revisão
Estrutural
caixa branca
Funcional
caixa preta
Especificação
Experiência
Partição de
Equivalência
Análise
do valor
limite
Tabela de
Decisão
Transição
de
Estados
Teste de
Caso de Uso
Cobertura de
Sentença
Cobertura de
Decisão …
Teste
Exploratório
Revisão
formal
Revisão
técnica
Acompanhamento Inspeção
Ferramentas
de Análise
Estáticas
Suposição de
Erro
Complexidade
Ciclomática
14. LBI - Microsoft
Explorar áreas e cenários do jogo
Verificar se uma regra definida está bem implementada durante a
execução do jogo
Validar os estados do personagem principal conforme sua evolução
na fase
Procurar por um tipo de problema que seja característico de uma
plataforma ou framework de desenvolvimento
Validar se o jogo está divertindo ou não
Validar comportamento do jogo nos dispositivos foco
Testes para Jogos Digitais (1)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
15. LBI - Microsoft
Exemplo de falhas de gameplay
Testes para Jogos Digitais (2)
16. LBI - Microsoft
Usadas para auxiliar na criação
e execução de testes
Técnicas de Testes para Jogos Digitais (1)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Combinatorial
Testing
Test Flow
Diagrams
Cleanroom
Testing
Test Trees
Play Testing
Todas são técnicas
adaptadas para Jogos
17. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (2)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Geração de casos de teste baseada na observação de que a maioria
das falhas são ocasionadas pela interação de, no máximo, dois
fatores.
Ele garante que todos valores utilizados para teste serão
combinados pelo menos uma vez com todos os valores dos outros
parâmetros inseridos, gerando o menor número de casos de teste
possível.
Utilizado para garantir uma maior cobertura nos eventos que podem ocorrer
no gameplay permitindo jogar, por exemplo, todos os modos de jogo de
forma combinada com todas as características possíveis dos personagens.
Combinatorial
Testing
18. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (3)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Jogo do Guerreiro
Um guerreiro deve vencer os inimigos para salvar uma cidade.
O jogador pode escolher entre os guerreiros branco e vermelho
e uma espada ou um bastão como arma. Além disso, o jogo
possui os níveis fácil, médio e difícil.
Combinatorial
Testing
1º Passo: Extrair os
parâmetros e valores
Personagem, ou guerreiro
(branco ou vermelho)
Arma (bastão ou espada)
Nível (fácil, médio ou
difícil)
2º Passo: Gerar a tabela (AllPairs tool) Dimensão 3122 = 12 CT
Significa que existem 3
parâmetros com dois
possíveis valores
Com a técnica
reduziu para 6 CT
19. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (4)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Combinatorial
Testing
Dimensão 51413327
Precisaria de 69.120 CT
para cobrir todas as
combinações
20. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (5)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Combinatorial
Testing
Com a técnica
reduziu para 23 CT
21. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (6)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
São modelos gráficos que representam o comportamento
de jogo na perspectiva do jogador (usuário final)
Nessa técnica ele chama de elementos: os eventos, ações
ou estados)
Eventos são mecanismos internos do jogo
Ações são os comportamentos transitórios ou
temporários causados por possíveis eventos
Estados um comportamento definitivo do jogo
Test Flow
Diagrams
22. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (7)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Formado por três etapas:
Preparação: identificar os requisitos que podem ser
inseridos e modelados a partir de fluxos de estados
Alocação: estimar o número de TFDs necessários para
cobrir e mapear os elementos, requisitos ou
funcionalidades escolhidos para o teste
Construção: implementar os TFDs em uma ferramenta
de modelagem
Test Flow
Diagrams
23. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (8)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Test Flow
Diagrams
PREPARAÇÃO ALOCAÇÃO
Foram alocados 27 fluxos
considerando as regras
descritas no GDD para o
gameplay
24. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (9)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Test Flow
Diagrams
31 CT
CONSTRUÇÃO
25. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (10)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
A idéia dessa técnica é medir o tempo médio para
ocorrer uma falha (Mean Time To Failure - MTTF)
Como, mesmo após vários e vários ciclos de teste, o
usuário final consegue encontrar uma falha?
A idéia é tentar criar cenários que simulem a forma
como o jogador irá jogar realmente.
Cleanroom
Testing
26. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (11)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Define a Probabilidade de utilização (frequências de
uso da funcionalidade ou modo de jogo)
Baseada no uso do Modo jogo
o Single player, multiplayer, massive player.
Baseada no uso do Tipo do Jogador
o Achievement, Exploration, Socializing, Killing
Baseado no uso da Vida Real
o Capacidade do jogo capturar as preferências dos
usuários
Cleanroom
Testing
27. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (12)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Pode usar tanto o TC
quando o TFD para
gerar casos de teste
pensando nessa Técnica
Cleanroom
Testing
28. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (13)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Ajuda a explorar sistematicamente as características e
funções do jogo
Podem ser usados de três formas
Test Case Trees: Documenta de forma hierárquica o
relacionamento entre casos de teste e funcionalidades
(elementos e funções) do jogo
Tree Feature Tests: Reflete as estruturas de
funcionalidades e funções do jogo em forma de árvore
Test Tree Designs: desenvolve testes que cobrem partes
específicas do jogo
Test Trees
29. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (14)
http://pontov.com.br/site/arquitetura/60-testes-em-jogos/200-tecnicas-de-teste-em-jogos-digitais
Test Trees
Test Case Trees, vai
organizar a visualização
dessa árvore associando
os casos de teste já
criados com as
funcionalidades
(Características) do jogo
Caso de Teste:
Executar o jogo com
o Anão, usando o
modo “single player”
Base de
Testes
Associar
30. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (15)
http://pontov.com.br/site/arquitetura/60-testes-em-jogos/200-tecnicas-de-teste-em-jogos-digitais
Test Trees
Tree Feature Test, vai ajudar a definir as funcionalidades,
elementos, estados, modos e funções do jogo
31. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (16)
http://pontov.com.br/site/arquitetura/60-testes-em-jogos/200-tecnicas-de-teste-em-jogos-digitais
Test Trees
Test Tree Designs, vai ajudar a definir casos de teste para as as
funcionalidades, elementos, estados, modos e funções
modeladas na árvore
Base de
Testes
32. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (17)
Shultz, C.; Bryant, R. e Langdell, T. Game Testing All In One. United States: Thomson/Course Technology, 2005
Nessa técnica é usada o princípio do teste exploratório
(experiência ou expecificação)
Diferente das outras técnicas que ajudavam a responder
a pergunta: “O jogo funciona”?
Play Testing e Ad-Hoc Testing ajudam a responder as
perguntas:
“O jogo funciona bem?”, “A vitória é alcançável?”, “É
fácil aprender a jogá-lo?”, “Os controles do jogo são
intuitivos?”, “O jogo é divertido”, dentre outras..
Play Testing
33. LBI - Microsoft
Técnicas de Testes para Jogos Digitais (18)
http://pt.slideshare.net/luanalobao/teste-para-dispositivos-mveis-eats-manaus-2014
Passo 1: Preparação do ambiente e recursos necessários
Passo 2: Criação de hipótese a ser explorada
Passo 3: Definição básica dos cenários (checklist)
Passo 4: Executar os cenários definidos e possíveis variações
dentro do período estipulado para sessão de teste
Passo 6: Analisar os resultados e Registrar os defeitos
encontrados ou...
Passo 7: Repetir esse processo até que a hipótese seja
comprovada (ou não)
Play Testing
34. LBI - Microsoft
Game Testing All In One (Material completo do curso on line)
http://web.niaccist.niacc.edu/~milleste/classroom/testingconcepts/ind
ex.html
Artigo no Site Produção de Jogos http://producaodejogos.com/os-26-
melhores-sites-brasileiros-sobre-desenvolvimento-de-jogos/
Game Industry Career Guide
http://www.gameindustrycareerguide.com/blog/
What does a Games Tester do?
https://www.sokanu.com/careers/games-tester/
Game-Testers: Site para testar jogos e ganhar dinheiro
http://www.game-testers.net/
Por onde começar? (1)
35. LBI - Microsoft
Book: Game Testing All In One
Charles P. Shultz & Robert D. Bryant
Por onde começar?(2)
Book: Game QA & Testing
Luis Levy & Jeannie Novak
36. LBI - Microsoft
Obrigada!!!
Duvidas? Sugestões?
ext-luana.lobao@microsoft.com
luana.lobao
Luana LobãoLuana Lobão
Test Developer
Notes de l'éditeur
Formada por:
Espaço
Objeto
Atributos, Estados e Ações
Regras
Tecnologia (infraestrutura ou meio)
Plataforma
Linguagem de programação
IDE
Arquitetura
Define:
Design gráfico
Músicas (Efeitos)
Desenhos
Modelagem 2D e 3D
Animações
Define:
Enredo
Narrativa
Personagens
Mundo
Os parâmetros são os elementos individuais do jogo que você deseja incluir em seus testes combinatórios.
Você pode encontrar os parâmetros de teste de olhar para vários tipos de elementos de jogo, funções e opções tais
como:
Acontecimentos de jogo
Definições dos jogos
Opções de jogo
Configurações de hardware
Atributos do personagem
Opções de personalização
Achiever: quer cumprir missões e subir o nível, ponto e dinheiro do personagem
Explorer: descobrir o que o jogo tem pra oferecer e viajar nas cenas obscuras do jogo, lugares, bordas, cenários, etc
Socializer: usa o jogo pra conhecer a comunidade e outros jogadores
Killers: gostam de se sair melhor que outros jogadores. Faz isso derrotando o maximo de inimigos ou outros jogadores
Achiever: quer cumprir missões e subir o nível, ponto e dinheiro do personagem
Explorer: descobrir o que o jogo tem pra oferecer e viajar nas cenas obscuras do jogo, lugares, bordas, cenários, etc
Socializer: usa o jogo pra conhecer a comunidade e outros jogadores
Killers: gostam de se sair melhor que outros jogadores. Faz isso derrotando o maximo de inimigos ou outros jogadores