TS03. Teste de Software ESTÁGIOS DO TESTE DE SOFTWARE. COTI Informática Escola de Nerds

Documentos relacionados
Guia do Processo de Teste Metodologia Celepar

Teste de Software. Competência: Entender as técnicas e estratégias de testes de Software

Desenvolvimento de Software. Testes de Software. Tópicos da Aula. Onde estamos... Verificação x Validação. Testes de Software

TESTES DE SOFTWARE Lista de Exercício 02. Luiz Leão

Teste de Software. Prof. Camila. Pedro de Assis Sobreira Jr.

MÓDULO 16 PLANEJAMENTO DE CONSTRUÇÃO, TESTES E DOCUMENTAÇÃO DO SISTEMA

Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata

Estágio II. Aula 02 Conceitos de Teste de Software. Prof. MSc. Fred Viana

TESTES DE SOFTWARE Unidade 1 Importância do Teste de Software. Luiz Leão

Prof. Fábio Lúcio Meira

TESTES DE SOFTWARE Lista de Exercício 01. Luiz Leão

05/09/2013. Ciclo de vida de um Sistema de Informação

TESTES DE SOFTWARE 1. Fundamentos sobre testes de software

INTRODUÇÃO A ENGENHARIA DE SOFTWARE

Princípios da Engenharia de Software aula 03

Título PROCESSO LABES ESPECIALIZADO PARA DESENVOLVIMENTO SEGUNDO O PARADIGMA ESTRUTURADO. Projeto. Analista; Requisitos Funcionais Escopo; Cliente;

Unidade 4 Teste na Implantação do Sistema

Fundamentos de Teste de Software

TESTES DE SOFTWARE. Profa. Maria Auxiliadora

Processos de software

Engenharia de Software

Verificação e Validação. Ewelton Yoshio Fabrício Araújo

Testes de Software. Prof. Edjandir C. Costa

- 8ª Lista de Exercícios -

ENGENHARIA DE SOFTWARE. Aula 12 Testes de software

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima

Engenharia de Software

Teste de Software. Professor Maurício Archanjo Nunes Coelho

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

ISO/IEC 12207: Verificação, Validação e Testes

Verificação e Validação

Introdução aos Testes de Software

Verificação e Validação (V & V)

CICLO DE VIDA DE SOFTWARE

TS02. Teste de Software INTRODUÇÃO AO PROCESSO DE TESTE DE SOFTWARE. COTI Informática Escola de Nerds

Teste de Software. Planejamento de Teste. Rosemary Silveira Filgueiras Melo

Processos de Validação e Verificação do MPS-Br

Organização para Realização de Teste de Software Quando o teste se inicia há um conflito de interesses:

O conceito de casos de uso foi criado em 1986 por Ivar Jacobson, metodologista e um dos pais do Processo Unificado.

Bibliografia. Quais são os problemas? capacidade de construção. acompanha a demanda por novos programas. ameaçada por projetos ruins.

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA RATIONAL UNIFIED PROCESS - RUP

Estágio II. Aula 04 Testes Ágeis. Prof. MSc. Fred Viana

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

Engenharia de Software II

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Métodos Ágeis e Programação Extrema (XP)

Normas ISO:

SSC 0721 Teste e Validação de Software

Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Estratégias de Testes Parte I

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1

Engenharia de Software

CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS. Tereza Gonçalves Kirner

Rational Unified Process (RUP)

Teste de Software. Objetivo: Executar software para revelar erros/falhas ainda não descobertos. Pode gastar 40% do esforço de desenvolvimento

FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS. Projeto de Programas PPR0001

Organização para Realização de Teste de Software

1. A principal razão de dividir o processo de teste em tarefas distintas é:

Teste de Software. Karen Frigo Busolin Novembro / 2010

Análise e Projeto. Prof. Erinaldo Sanches Nascimento

4/14/11. Processos de Engenharia de Requisitos. Engenharia de requisitos. Elicitação e análise. A espiral de requisitos

Engenharia Software. Ení Berbert Camilo Contaiffer

Teste de Software. Introdução. Teste de SW -Introdução. Verificação e Validação

Plano de Testes VideoSystem

Engenharia de Software

ARIES. Visão Geral da Metodologia Aries

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Prof. Fabiano Papaiz IFRN

3. Engenharia dos requisitos de software

RUP RATIONAL UNIFIED PROCESS

Perguntas da Aula 2. Respostas da Pergunta 2. Respostas da Pergunta 1. Respostas da Pergunta 4. Respostas da Pergunta 3. Processos de Software

4 Caso de Uso no Ambiente Oracle

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

DICIONÁRIO DA ESTRUTURA ANALÍTICA DO PROJETO - SISCOP. Data Versão Descrição Autor

Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS. Nome:

Professor Emiliano S. Monteiro

Introdução a Testes de Software. Ricardo Argenton Ramos

Análise e projeto de sistemas

Abordagem para Construção de SI. Ciclo de Vida de Sistemas Tradicionais

Teste de Software Intermediário

ENGENHARIA DE SOFTWARE

Escolhendo um Modelo de Ciclo de Vida

Engenharia de Software. Processos. Desenvolvimento de Software Tradicionais 2014/2. Prof. Luís Fernando Garcia

Engenharia de Software. Projeto de Arquitetura

Gerenciamento de Projetos

Transcrição:

TS03 Teste de Software ESTÁGIOS DO TESTE DE SOFTWARE COTI Informática Escola de Nerds

Teste do Desenvolvedor O Teste do Desenvolvedor denota os aspectos de design e implementação de teste mais apropriados para a equipe de desenvolvedores que projetou e implementou o software. Faz contraste com o Teste Independente. Na maioria dos casos, a execução do teste ocorrerá inicialmente com o grupo de teste do desenvolvedor que projetou e implementou o teste, mas os desenvolvedores criam seus testes de maneira que fiquem disponíveis aos grupos de teste independente para execução. Tradicionalmente, o teste do desenvolvedor foi projetado principalmente em termos de teste unitário, com níveis variáveis de ênfase no teste de integração dependendo muito da cultura e outras questões contextuais com ênfase menos freqüente em outros aspectos do teste. Essa abordagem tradicional apresenta riscos à qualidade do software nessas importantes questões de teste, que geralmente surgem na fronteira dessas distinções e costumam ser ignoradas pelos diferentes grupos destinados a enfatizar cada "nível". A melhor abordagem consiste em dividir o esforço de trabalho para que haja uma sobreposição planejada. A natureza exata dessa sobreposição baseia-se nas necessidades do projeto individual. É recomendável criar um ambiente em que o desenvolvedor e os testadores independentes compartilhem uma única visão de qualidade.

Teste Independente e dos Envolvidos O Teste Independente denota o design e a implementação de teste mais apropriados para alguém independente da equipe de desenvolvedores. Essa distinção pode ser considerada um superconjunto que inclui Verificação Independente & Validação. Na maioria dos casos, a execução do teste ocorrerá inicialmente com o grupo de teste independente que projetou e implementou o teste, mas os testadores independentes devem criar seus testes de maneira que fiquem disponíveis aos grupos de teste do desenvolvedor para execução. Uma visão alternativa desse teste independente é que ele representa o teste realizado com base nas necessidades e problemas de vários envolvidos, por isso é chamado de Teste dos Envolvidos. Essa é uma distinção importante: ajuda a incluir um conjunto de problemas do envolvido maior que o conjunto considerado tradicionalmente como, por exemplo, equipe de suporte técnico, instrutores técnicos, equipe de vendas, além de clientes e usuários finais.

Teste Unitário O teste unitário é uma distinção mais tradicional. Implementado logo no início da iteração, ele se concentra na verificação dos menores elementos de programação testáveis do software (funções, classes, métodos, etc.). O teste unitário normalmente é aplicado a componentes do modelo de implementação para verificar se os fluxos de controle e de dados estão cobertos e funcionam conforme o esperado. Essas expectativas baseiam-se em como o componente participa da execução de um caso de uso, encontrada em diagramas de seqüência para esse caso de uso. O Implementador executa o teste unitário durante o desenvolvimento da unidade de programação. Os detalhes do teste unitário são descritos na disciplina Implementação. Teste de unidade é toda a aplicação de teste nas assinaturas de entradas e saídas de um sistema, consiste em validar dados válidos e inválidos via I/O (entrada/saída) sendo aplicado por desenvolvedores ou analistas de teste. Uma unidade é a menor parte testável de um programa de computador. Em programação procedural, uma unidade pode ser uma função individual ou um procedimento. Idealmente, cada teste de unidade é independente dos demais, o que possibilita ao programador testar cada módulo isoladamente. O teste unitário consiste em uma abordagem do tipo Caixa-Branca.

Teste de Integração Uma distinção tradicional, o teste de integração é executado para garantir que os componentes do modelo de implementação funcionem corretamente quando combinados para executar um caso de uso. O objetivo do teste é um pacote ou conjunto de pacotes do modelo de implementação. Em geral, os pacotes que estão sendo combinados são provenientes de diferentes organizações de desenvolvimento. O teste de integração detecta imperfeições ou erros nas especificações da interface do pacote. Teste de integração é a fase do teste de software em que módulos são combinados e testados em grupo. Ela sucede o teste de unidade, em que os módulos são testados individualmente, e antecede o teste de sistema, em que o sistema completo (integrado) é testado num ambiente que simula o ambiente de produção. O teste de integração é alimentado pelos módulos previamente testados individualmente pelo teste de unidade, agrupando-os assim em componentes, como estipulado no plano de teste, e resulta num sistema integrado e preparado para o teste de sistema. O propósito do teste de integração é verificar os requisitos funcionais, de desempenho e de confiabilidade na modelagem do sistema. Com ele é possível descobrir erros de interface entre os componentes do sistema. O teste de integração consiste em uma abordagem do tipo Caixa-Branca.

Teste de Sistema Uma distinção tradicional, o teste do sistema normalmente é realizado quando o software está funcionando totalmente. Um ciclo de vida iterativo permite que o teste do sistema ocorra muito mais cedo, assim que os subconjuntos bem formados do comportamento do caso de uso são implementados. Geralmente, o objetivo é o funcionamento dos elementos do sistema de ponta a ponta. O teste de sistema é uma fase do processo de teste de software e de hardware em que o sistema já completamente integrado é verificado quanto a seus requisitos num ambiente de produção. Está no escopo da técnica de teste de caixa-preta, e dessa forma não requer conhecimento da estrutura (lógica) interna do sistema. É um teste mais limitado em relação aos testes de unidade e de integração, fases anteriores do processo de teste, pois se preocupa somente com aspectos gerais do sistema. O teste de sistema não se limita a testar somente requisitos funcionais, mas também requisitos não funcionais como a expectativa do cliente, e por isso inclui também técnicas não funcionais de teste. O teste de Sistema consiste em uma abordagem do tipo Caixa-Preta.

Teste de Aceitação O teste de aceitação do "Usuário" normalmente é a ação de teste final anterior à implantação do software. O objetivo do teste de aceitação é verificar se o software está pronto e pode ser usado pelos usuários finais para executar as funções e as tarefas para as quais o software foi criado. Há outras noções de teste de "aceitação", geralmente caracterizadas por uma entrega de um grupo ou equipe para outro. Por exemplo, um teste de aceitação de build é o teste realizado para aceitar o encaminhamento de um novo build de software do desenvolvimento para o teste independente. Teste de aceitação é uma fase do processo de teste em que um teste de caixa-preta é realizado num sistema antes de sua disponibilização. Tem por função verificar o sistema em relação aos seus requisitos originais, e às necessidades atuais do usuário. É geralmente realizado por um grupo restrito de usuários finais, num ambiente parecido com o deles. O teste de Aceitação consiste em uma abordagem do tipo Caixa-Preta.

2. CONCLUSÃO Normalmente, o teste é aplicado a diferentes tipos de objetivos em diferentes estágios ou níveis de esforço de trabalho. Esses níveis distinguem-se normalmente pelos papéis mais habilitados para projetar e conduzir os testes, e pelas técnicas mais apropriadas para o teste em cada nível. É importante garantir que um equilíbrio de foco seja mantido nesses diferentes esforços de trabalho.