Buscar

Testes de Software: Planejamento e Abordagens

Prévia do material em texto

1. Os testes, durante um projeto de desenvolvimento de software, são fundamentais para garantir a entrega de um produto de qualidade ao cliente, mas eles não podem iniciar sem que sejam planejados. Pode-se dizer que o maior propósito do planejamento de testes é:
R- servir de guia para os testadores, mostrando a maneira como os testes devem ser realizados
2O documento que traz, de maneira detalhada, todos os problemas e erros encontrados, e ainda todos os acontecimentos ocorridos durante a realização dos testes, focando principalmente naqueles itens que precisarão ser avaliados posteriormente, segundo a norma IEEE 829, é: 
R - Relatório de incidentes de teste. 
3 Imagine que você é gestor de projeto de desenvolvimento de software, e está trabalhando em um grande projeto que contém vários testadores divididos em equipe. Qual é o documento que deve ser usado para definir o que será testado, e por quem, de acordo com a norma IEEE 829?
R - Relatório de encaminhamento de itens de teste. 
4O PMBOK encara a realização dos testes, por ser uma tarefa extremamente importante para o desenvolvimento de um software, como um projeto independente. Sendo assim, qual é a área de conhecimento do projeto de testes que vai ficar encarregada de definir qual será a abrangência dos testes, bem como aquilo que deverá ser testado ou não? 
R - Gerenciamento do escopo. 
5O PMBOK entende que os testes de software devem formar um projeto independente do projeto de desenvolvimento do software, tendo, inclusive, fases de ciclo de vida que, apesar de poderem ter a mesma nomenclatura, envolvem atividades diferentes. Nesse sentido, segundo o PMBOK, qual é a fase do projeto de testes que avalia se as atividades estão sendo realizadas conforme o planejado? 
R - Monitoramento e controle. 
1. Você é analista de sistemas, e está desenvolvendo um software de logística para um grande cliente de sua empresa. Por ser um dos programadores no projeto, você vai realizar testes na estrutura interna do código, a fim de verificar o funcionamento dos laços de repetição, chamadas de função, decisões lógicas, entre outros aspectos. Esse tipo de teste é chamado de:
R-  Teste de caixa-branca.
2. O teste de caixa-branca é aquele em que o testador, ou analista de testes, consegue validar a codificação do software, a sua estrutura interna. Neste sentido, através do teste de caixa-branca, é possível encontrar problemas como:
R - Cálculos com respostas erradas e finalização errada de laços de repetição. 
3. Você é testador de software, e está trabalhando nos testes de um sistema em que precisou estudar muito os requisitos do software, a fim de conhecer as saídas do sistema para cada ação executada. Que abordagem de teste é essa?
R - Teste de caixa-preta. 
4. O teste de caixa-preta é aquele que possibilita validar se o software que está sendo desenvolvido atende às necessidades do cliente, mas sem que o testador, ou analista de testes, precise ter acesso à estrutura interna ao código-fonte. Quais tipos de problemas podem ser encontrados através do teste de caixa-preta?
R - Permite que deixe campos obrigatórios em branco e aceita valores fora de um intervalo especificado nos requisitos. 
5. 
O tipo de abordagem de teste em que o testador tem acesso às estruturas SQL do código-fonte, e pode manipulá-las, a fim de verificar quais são as saídas produzidas quando acessa o banco de dados é o:
R - Teste de caixa-cinza. 
1. O teste de sistema é aquele que verifica se o software que foi desenvolvido está de acordo com o que foi definido no escopo do projeto, considerando a execução das atividades que deveria executar e se está condizente com o nível de qualidade, segurança e confiabilidade exigidos.
Nesse sentido, pode-se dizer que o teste de sistema faz a validação dos:
R - requisitos funcionais e não funcionais do software. 
2. Todos os níveis de teste de software são importantes, pois é necessário que sejam feitos ao longo de todo o ciclo de vida do projeto de desenvolvimento. Em um desses níveis, é importante que o próprio desenvolvedor se envolva nos testes, pois ele tem um conhecimento maior da linguagem de programação utilizada no código, além de conhecer a estrutura interna do software.
Que nível de teste é esse?
R - Teste unitário. 
3. O teste de integração tem como propósito testar partes do sistema, de forma integrada, que já haviam sido testadas e validadas por meio de testes de unidade. Isso serve para verificar se, juntas, elas funcionam corretamente.
Nesse sentido, os testes de integração servem para encontrar que tipo de problema?
R - Problemas de transmissão de dados. 
4.  O teste de aceitação do usuário é aquele que recebe uma aceitação formal do usuário sobre o software que está sendo entregue, ou seja, o usuário informa que aprova o software da maneira como está desenvolvido. Existem outros dois tipos de teste de aceitação, os quais se referem à aceitação de uma entrega entre equipes, e o teste de aceitação que aprova contratos e legislação que precisam ser seguidas.
Como esses testes se chamam?
R - Teste de aceitação de entrega e teste de aceitação de contrato e regulamento. 
5.  O teste de regressão normalmente é realizado enquanto o código do software ainda está sendo desenvolvido. Ele é necessário sempre que alguma mudança na estrutura do software acontece, tanto para modificar algo já implementado quanto para incluir uma nova funcionalidade.
Nesse sentido, o teste de regressão é feito por meio dos testes de qual(is) parte(s) do software?
R - Todo o software. 
1. Você trabalha como analista em uma empresa fornecedora de softwares para um grupo de supermercados. Sua próxima atividade é trabalhar no desenvolvimento de um sistema de controle de estoque, e seu gestor informou que você deverá atuar também como testador, sem que seus testes envolvam a verificação do módulo ou do sistema como um todo. Você logo entendeu que deve realizar que tipo de teste?
R -   Teste de unidade.
2.  Você está codificando um módulo de um sistema de controle de livros em uma biblioteca e finalizou a parte de cadastro de livros. Para efetuar os testes unitários nessa unidade, você precisará verificar se as informações estão sendo gravadas corretamente no banco de dados, na medida em que você inclui, altera ou exclui registros. Qual elemento da unidade você está testando?
R - Estrutura de dados locais. 
3. Você finalizou a codificação do cadastro de férias de funcionários em um sistema de recursos humanos. Nesse momento, você vai testar todos os controles da unidade para verificar se os erros cometidos pelo usuário recebem uma mensagem de retorno, e se essa mensagem contém informações a respeito do que pode ser feito para corrigir o problema, tudo isso sem que o funcionamento do sistema seja interrompido. Qual elemento da unidade você vai testar?
R - Caminhos de manipulação de erro. 
4.  Você foi escalado para integrar a equipe de desenvolvimento de um sistema de controle financeiro de uma empresa, que está sendo fabricado em Java. Para entender melhor sobre os padrões de desenvolvimento da equipe, você começou a analisar os códigos desenvolvidos até o momento e observou que as classes eram elaboradas de tal maneira que os testes unitários eram realizados por meio da comparação entre os valores que eram esperados pela unidade e os valores realmente recebidos pela sua execução. Dito isso, a ferramenta de teste de unidade que está sendo utilizada certamente é:
R - JUnit. 
5.  Você acabou de codificar uma parte de um programa que vai ser utilizado com alunos em uma escola infantil. Seus testes unitários, da maneira como você os realizou, conseguiram identificar que a unidade programada por você está se integrando facilmente com o restante do sistema, que as partes do programa que já estavam prontas não apresentaram novos erros, e ainda possibilitaram a documentação detalhada das funcionalidades constantes nessa unidade. Logo, pode-se perceber que isso aconteceu por quê?
R - Os testes foram feitos de forma automatizada.

Mais conteúdos dessa disciplina