Por que não (não testar)? Danilo Sato www.dtsato.com

Documentos relacionados
Introdução a Métodos Ágeis. Curso de Verão IME/USP

Introdução a Testes Automatizados

Testes Ágeis. Malba Jacob Prudente

Desenvolvimento de Software de Qualidade através de Testes Automatizados

Testes Automatizados. Cursos de Verão 2007 IME/USP Dairton Bassi & Paulo Cheque

Agile Methods for the Traditional Guy

Agenda. O que é Testar? Por que testar? Quando testar? Processo de teste Níveis de teste Tipos de teste Classificação dos testes.

Behaviour-Driven Development com RSpec e RSpec on Rails. Danilo Sato

Desenvolvimento de Software de Qualidade através de Testes Automatizados

Testes Automatizados. Paulo Cheque. 27/01/2009 Verão 2009

GESTÃO DA MANUTENÇÃO

Refatoração: Melhorando a Qualidade de Código Pré-Existente. Cursos de Verão 2009 IME/USP Mariana Bravo & Hugo Corbucci

A Importância dos Testes Automatizados

Padrões de Testes Automatizados

Introdução à Manutenção O QUE VOCÊ ENTENDE POR MANUTENÇÃO?

Banco de Dados Ágeis e Refatoração

Refatoração: Melhorando a Qualidade de Código Pré-Existente. Cursos de Verão 2008 IME/USP Mariana Bravo & Hugo Corbucci

CATÁLOGO DE REQUISITOS DE TITULAÇÃO

Aula Extra. Depurador Code::Blocks. Monitoria de Introdução à Programação

Teste de software. Engenharia de software Profª karine sato da silva

Unidade II Atividades em PDS: Testes. Unidade III Suporte e Manutenção. Processo Desenvolvimento Software

Testes de Unidade. Curso de Verão IME/USP Hugo Corbucci

EA976 Engenharia de Software. AULA 2 Ciclo de Vida de um Software

Responsáveis. 1. Prestador de Serviço: ACBL Sistemas. 2. Cliente: Salt House Massas e Complementos. Documento de Visão do Sistema

Introdução a Métodos Ágeis de Desenvolvimento de Software

Manutenção total aplicada em ferramentarias

Extending Extreme Programming With Practices From Other Methodologies

OpenPDV: Sistema aberto para gerenciamento de restaurantes

Dificuldades na implantação de Métodos Ágeis

Por que usar o Poka-Yoke no Lean Seis Sigma?

Seminário - Qualidade de Software/Testes de Software

Engenharia de Software. Ciclos de Vida do Software. 1. Sistemas

ATMM uma ferramenta para gerenciamento de métricas de teste no contexto de métodos ágeis

UNIVERSIDADE DE SÃO PAULO - USP RELATÓRIO DOS PROGRAMAS: JOOMLA, DRUPAL E WORDPRESS

Motivos para verificação de códigos garantir ausência de erros de programação ou utilização

TESTANDO MAIS PARA DEPURAR MENOS: OS BENEFICIOS DOS TESTES PARA O DESENVOLVIMENTO DE SOFTWARE

Linguagens e códigos digitais

BC1424 Algoritmos e Estruturas de Dados I Aula 02: Ponteiros, estruturas e alocação de memória

Classificação de Materiais

BDD e eu com isso? Glaucimar Aguiar. Outubro, 2016

Lições Aprendidas sobre Testes

Sistemas Fotovoltaicos (Modalidade Online) Apresentação do Curso

MÓDULO CAPITAL GESTÃO DE RECURSOS LTDA. Política de Treinamento e Reciclagem de Colaboradores

Desempenho das. Modelo Japonês de Administração

Desenvolvimento de Software Lean

Desenvolvimento Dirigido por Testes (TDD)

ME613 - Análise de Regressão

Testar: impossível. Jorge Diz Globalcode. Agile Brazil 2010 Slide 1

Desenvolvimento guiado por testes e ferramentas xunit

Projeto Integrador Gestão em TI II Gestão em Pessoas. Organograma DIRETOR DEPARTAMENTO DE T.I ANALISTA TÉCNICO

Tracking Acompanhamento de Projetos Ágeis

1- Introdução ao Lean V1-2008

Guia de desenvolvimento de um aplicativo para o sistema operacional Android

Refatoração Melhorando o sistema e preparando pra a Web

PROGRAMA 5S. Uma dose de BOM SENSO em tudo o que a gente faz.

Administração Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Testes de Interface de Usuário

Teste de Software. Estratégias de Teste. Rosemary Silveira Filgueiras Melo

PESQUISA REALIZADA COM PARTICIPANTES DO 1º WORKSHOP DE TECNOLOGIA

ESCOLA TÉCNICA ESTADUAL DE ILHA SOLTEIRA ILHA SOLTEIRA

Capítulo 3: Qualidade de Produto e a ISO 9126

Dia de Levar Nossos Filhos e Filhas ao Trabalho

Módulos Combinatórios

Oganização e Arquitetura de Computadores

Motor para jogos 2D utilizando HTML5

Técnicas de Programação para a Web. Luiz Cláudio Silva. Novembro de Apresentação

Introdução à Programação extrema (XP)

Concurso limitado por prévia qualificação para a celebração de acordo quadro para a prestação de serviços de vigilância e segurança

PERÍODOS SEGUNDA TERÇA QUARTA QUINTA SEXTA

AUTOMAÇÃO EM TESTES ÁGEIS AUTOMATION IN AGILE TESTING. Monique F. da Silva 1, Autran G. Moreno 2

Formação WEB com PHP. Subtítulo

Testes com JUnit. Treinamento ALESP SPL. Danilo Toshiaki Sato.

Cadeira de Tecnologias de Informação. Ano lectivo 2009/2010. Sites dinâmicos. Com Expression Web TI2009/10 EWD_1. Filipa Pires da Silva (2009)

Alguns Apontamentos Sobre Cálculo Combinatório

A taxa do IRC para as PME. Alguns aspetos a ter em conta para a sua utilização

EFICIÊNCIA ENERGÉTICA

DECODIFICANDO O DESENVOLVEDOR WEB

Testes Automatizados Melhorando a velocidade e a qualidade dos aplicativos

Ouvidoria Municipal de Curitiba

Perspectivas Estruturais do Mercado de Trabalho na Industria Brasileira

Sistemas de Tempo Real

Requisitos de Titulação para Inscrição no Processo Seletivo de Docentes Aviso Processo 8969/2012

Desenvolvimento de Sistemas WEB

Este Gabarito corresponde às Provas do Caderno de Questões de Código EDITAL DE CONCURSO PÚBLICO 001/2013 GABARITO PRELIMINAR

Qualidade de Produto. Maria Cláudia F. P. Emer

PROGRAMA DA CADEIA PRODUTIVA DO PETRÓLEO & GÁS INSERÇÃO DE PEQUENAS EMPRESAS NA CADEIA PRODUTIVA DE ÓLEO E GÁS

Desenvolvimento de Software de Qualidade com Métodos Ágeis e Software Livre

Portfólio. Diego Machado

DESCOBERTO. (Glen Myers)

Desenvolvimento de Software Lean

Não há segredos em nosso negócio. Por isso, pedale muito!!!

Credenciamento. e manual de instalação Magento. Credenciamento. Configurações

Preparação para a Certificação de Engenheiro da Qualidade 1

ESTÁ PREPARADO PARA FAZER A ESCOLHA CERTA? CRIAÇÃO DE SITES. PROPOSTA COMERCIAL válida por 15 dias

Prototipação Exploratória

Marcelo Henrique dos Santos

Transcrição:

Por que não (não testar)? Danilo Sato www.dtsato.com

Quem sou eu? Graduação/Mestrado no IME-USP AgilCoop ThoughtWorks UK Fundador do Dojo@SP

Por que não testar?

Por que não testar? É muito difícil / Eu não sei como

Por que não testar? É muito difícil / Eu não sei como Preciso terminar isso agora!

Por que não testar? É muito difícil / Eu não sei como Preciso terminar isso agora! Meu código funciona!

Por que não testar? É muito difícil / Eu não sei como Preciso terminar isso agora! Meu código funciona! Tenho que programar o dobro

Por que não testar? É muito difícil / Eu não sei como Preciso terminar isso agora! Meu código funciona! Tenho que programar o dobro Não é problema meu...

E se eu não testar?

E se eu não testar? Trabalho manual

E se eu não testar? Trabalho manual Como o sistema funciona?

E se eu não testar? Trabalho manual Como o sistema funciona? Refatorar? Migrar?

E se eu não testar? Trabalho manual Como o sistema funciona? Refatorar? Migrar? Problemas de regressão / manutenção

E se eu não testar? Trabalho manual Como o sistema funciona? Refatorar? Migrar? Problemas de regressão / manutenção Big Ball of Mud

E se eu não testar? Trabalho manual Como o sistema funciona? Refatorar? Migrar? Problemas de regressão / manutenção Big Ball of Mud Debug

Qualidade

Work smarter, not harder Qualidade

Qualidade Work smarter, not harder Inspecionar para previnir defeitos é bom; Inspecionar para encontrar defeitos é desperdício -- Shigeo Shingo, The Toyota Production System

Qualidade Work smarter, not harder Inspecionar para previnir defeitos é bom; Inspecionar para encontrar defeitos é desperdício -- Shigeo Shingo, The Toyota Production System Auto-inspeção (mistake-proof)

Diferentes Sabores Perspectiva do Negócio Suporte à programação Crítica ao Produto Perspectiva da Tecnologia

Diferentes Sabores Perspectiva do Negócio Suporte à programação Teste de História Teste de Aceitação (Design do Produto) Teste de Unidade Teste Funcional/Integração (Design do Código) Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Diferentes Sabores Perspectiva do Negócio Suporte à programação Teste de História Teste de Aceitação (Design do Produto) Teste de Unidade Teste Funcional/Integração (Design do Código) Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Ferramentas Perspectiva do Negócio Suporte à programação Teste de História Teste de Aceitação (Design do Produto) Teste de Unidade Teste Funcional/Integração (Design do Código) Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Ferramentas Perspectiva do Negócio Suporte à programação Teste de História Teste de Aceitação (Design do Produto) JUnit Teste de Unidade Test::Unit xunit PyUnit (Design do Código) script.aculo.us Teste Funcional/Integração Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Ferramentas Perspectiva do Negócio Suporte à programação FIT Fitnesse Teste de História Teste de Aceitação Sahi (Design do Produto) Selenium Watir JUnit Teste de Unidade Test::Unit xunit PyUnit (Design do Código) script.aculo.us Teste Funcional/Integração Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Ferramentas Perspectiva do Negócio Suporte à programação FIT Fitnesse Teste de História Teste de Aceitação Sahi (Design do Produto) RSpec JBehave Selenium Watir JUnit Teste de Unidade Test::Unit xunit PyUnit (Design do Código) script.aculo.us Teste Funcional/Integração Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Ferramentas Perspectiva do Negócio Suporte à programação FIT Fitnesse Teste de História Teste de Aceitação Sahi (Design do Produto) RSpec JBehave Selenium Watir JUnit Teste de Unidade Test::Unit xunit PyUnit (Design do Código) script.aculo.us Teste Funcional/Integração HTML Validator Teste de Usabilidade Teste Exploratório CSS Validator Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Ferramentas Perspectiva do Negócio Suporte à programação FIT Fitnesse Teste de História Teste de Aceitação Sahi (Design do Produto) RSpec JBehave Selenium Watir JUnit Teste de Unidade Test::Unit xunit PyUnit (Design do Código) script.aculo.us Teste Funcional/Integração HTML Validator Teste de Usabilidade Teste Exploratório httperf JMeter CSS Validator Siege Teste de Carga Teste de Segurança Teste Combinatório Nessus Nikto/Wikto Crítica ao Produto Perspectiva da Tecnologia

Suporte à programação FIT Fitnesse Ferramentas Teste de História Teste de Aceitação RSpec Sahi (Design do Produto) JUnit Teste de Unidade Test::Unit xunit PyUnit (Design do Código) script.aculo.us Teste Funcional/Integração Perspectiva do Negócio JBehave Selenium Watir HTML Validator Teste de Usabilidade Teste Exploratório CSS Validator http://www.softwareqatest.com/qatweb1.html httperf JMeter Siege Teste de Carga Teste de Segurança Teste Combinatório Nessus Nikto/Wikto Crítica ao Produto Perspectiva da Tecnologia

Um caminho a trilhar... Perspectiva do Negócio Suporte à programação Teste de História Teste de Aceitação (Design do Produto) Teste de Unidade Teste Funcional/Integração (Design do Código) Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Um caminho a trilhar... Perspectiva do Negócio Suporte à programação Teste de História Teste de Aceitação (Design do Produto) Teste de Unidade Teste Funcional/Integração (Design do Código) Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Um caminho a trilhar... Perspectiva do Negócio Suporte à programação Teste de História Teste de Aceitação (Design do Produto) Teste de Unidade Teste Funcional/Integração (Design do Código) Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Um caminho a trilhar... Perspectiva do Negócio Suporte à programação Teste de História Teste de Aceitação (Design do Produto) Teste de Unidade Teste Funcional/Integração (Design do Código) Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Um caminho a trilhar... Perspectiva do Negócio Suporte à programação DEMO Teste de História Teste de Aceitação (Selenium) (Design do Produto) Teste de Unidade Teste Funcional/Integração (Design do Código) Teste de Usabilidade Teste Exploratório Teste de Carga Teste de Segurança Teste Combinatório Crítica ao Produto Perspectiva da Tecnologia

Dojo de Programação Dojo@SP

Dojo de Programação Dojo@SP http://groups.google.com/group/dojo_sp

Dojo de Programação Dojo@SP http://groups.google.com/group/dojo_sp

Dojo de Programação Dojo@SP http://groups.google.com/group/dojo_sp

Dojo de Programação Dojo@SP http://groups.google.com/group/dojo_sp

Dojo de Programação Dojo@SP http://groups.google.com/group/dojo_sp

Dojo de Programação Dojo@SP http://groups.google.com/group/dojo_sp

Dúvidas? Danilo Sato www.dtsato.com Dojo@SP groups.google.com/group/dojo_sp AgilCoop www.agilcoop.org.br