Workshopteste-pucrs

  • October 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Workshopteste-pucrs as PDF for free.

More details

  • Words: 704
  • Pages: 17
Teste de Software Ensino e Pesquisa

Teste de Software Questões: • Qual o perfil de um Eng. de Testes? • Quais os conhecimentos necessários? • O que se deveria ensinar? • O que se ensina na FACIN/PUCRS hoje? • O que é o CPTS? • Quais os rumos da pesquisa do CPTS?

Perfil técnico • Conhecimentos de engenharia de software. – Ciclo de vida • Especificação • Projeto • Teste propriamente dito

– Gerência da qualidade.

• Conhecimentos básicos de programação • Conhecimentos básicos de banco de dados – operação e configuração de SGBDs.

• Conhecimentos médios de redes e sisop – configuração, operação e administração.

Perfil pessoal • Paciência / Perseverança / Organização • Firmeza de opinião • Espírito investigador • Capacidade de trabalhar em equipe • Diplomacia

Como ensinar? Áreas de formação segundo SeSu/Mec: • Formação básica: – – – – – – –



Formação tecnológica – – – – – – – –



Sistemas operacionais, redes e sistemas distribuídos Compiladores Banco de dados Engenharia de software Sistemas multimídia, interfaces, realidade virtual Inteligência artificial Computação gráfica e processamento de imagem Pratica do ensino de computação

Formação complementar –



Ciência da computação Programação Computação e algoritmos Arquitetura de computadores Matemática Física e eletricidade Pedagogia

Organização empresarial

Formação humanística

Como ensinar? • De uma forma geral: – Teste/Controle de qualidade agregam valor.

• Disciplinas de programação: – Explorar técnicas de teste unitário desde cedo

• Disciplinas de eng. de software: – Enfatizar a importância em todas as etapas do ciclo de vida. – Análise / projeto: projetar visando testabilidade – Desenvolvimento de plano de testes – Execução de testes – Ciclo de vida de bugs/Gerência de configuração

Ensino de teste na FACIN • Bacharelado em Ciência da Computação: – Tópicos especiais em engenharia de Software I: Teste de software (opcional)

• Bacharelado em Sistemas de Informação: – Tópicos em Sistemas de Informação (obrigatória)

• A partir de 2004/1: – Teste unitário nas disciplinas de programação – Maior ênfase nas disciplinas de Eng. Software (hoje superficial)

O CPTS • Centro de Pesquisa em Teste de Software • Parte do convênio de pesquisa HP / PUCRS • Objetivos: – Estreitar relação Universidade x Empresa – Formação de recursos humanos na área de teste de software – Pesquisa na área de teste de software

O CPTS • Estrutura: – Laboratório de pesquisa: • dedicado ao desenvolvimento de novos processos, metodologias e ferramentas;

– Laboratório de teste: • resultados das pesquisas são aplicados em projetos de software reais da HP de maneira a verificar sua aplicabilidade; • formação de RH.

O CPTS • Professores: – Bernardo Copstein – Flavio Oliveira – Eduardo Bezerra

• Equipe de pesquisa – 2 mestrandos (PPGCC/FACIN/PUCRS) – 4 alunos de graduação

• Equipe de teste – 8 alunos de graduação

Pesquisa no CPTS • Objetivo atual: – Desenvolvimento de tecnologia de teste robusta o suficiente para testar aplicações complexas em ambientes dinâmicos de uma forma consistente.

• Temas relacionados sendo desenvolvidos: • Confiabilidade de software; • Teste estatístico; • Relações entre teste e tolerância a falhas.

– Outros temas: • Análise de código fonte; • Teste de integração.

Ambiente STAGE • STAGE (STAte-based test GEnerator) é um ambiente integrado para geração automática de casos de teste e scripts de teste usando técnicas baseadas em estados. • Composto por 3 pacotes: – STAGE-Model – STAGE-Test – STAGE-Script

Ambiente STAGE • STAGE-Model: – – – –

FSM VFSM Cadeias de Markov Redes de Automatos Estocásticos

• STAGE-Test: – Técnicas baseadas em critérios de cobertura – Técnicas baseadas em teste estatístico

• STAGE-Scritp – Scritps compativeis com Rational Robot e JRobot

Teste Estatístico • Permite a estimativa de parâmetros. – Confiabilidade.

• Seleciona casos de teste randômicamente baseado na distribuição estatística dos caminhos. • Baseado em modelos de uso: – Modelo que caracteriza o uso operacional de um sistema de software.

• Modelos normalmente são construídos usando Cadeias de Markov: – Problema: explosão do espaço de estados

Explosão do espaço de estados

Uso de SAN

Próximos passos ... • Melhorar estimativas de confiabilidade – Modelos estatísticos – Critérios de parada

• Alternativas de modelagem – Maior expressividade – Problema do crescimento do espaço de estados

• Relação entre teste e tolerância a falhas