SóProvas


ID
5425
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2006
Provas
Disciplina
Engenharia de Software
Assuntos

Uma estratégia de teste de software integra métodos de projeto de casos de teste em uma série bem planejada de passos, que resultam na construção bem sucedida de um software. O objetivo principal do projeto de casos de teste é originar um conjunto de testes que tenha a maior probabilidade de detectar erros no software. Sobre as estratégias e técnicas de teste de software, assinale a afirmativa correta.

Alternativas
Comentários
  • Os testes de caixa preta são projetados para validar os requisitos funcionais, sem se preocupar com o funcionamento interno de um programa. As técnicas de teste de caixa preta concentram-se no domínio de informações do software, derivando os casos de teste ao dividir a entrada e a saída de uma maneira que proporcione uma satisfatória cobertura de teste. O particionamento de equivalência divide o domínio de entrada em classes de dados que provavelmente exercitarão uma função de software específica. A análise do valor de fronteira prova a capacidade que um programa tem de manipular dados nos limites da aceitabilidade. o grafo de causa-efeito é uma técnica que possibilita que o analista valide conjuntos complexos de ações e condições.

    Os projetistas de softwares experientes frequentemente dizem: " a atividade de teste nunca termina; ela é apenas transferida do projetista para o seu cliente. toda vez que o seu cliente usa o programa, um teste é realizado". Ao aplicar o projeto de casos de teste, o engenheiro de software pode realizar testes mais completos e, portanto, descobrir e corrigir o maior número de erros possíveis antes que os "testes do cliente" se iniciem.
  • Os teste de caixa branca focalizam a estrutura de controle do programa. Os casos de teste são derivados para garantir que todas as instruções do programa tenham sido exercitadas pelo menos uma vez durante os testes e que todas as condições lógicas tenham sido exercitadas. Os testes de caminho básico , uma técnica de caixa branca, faz uso de grafos de programa para derivar o conjunto de testes linearmente independentes que garantirá cobertura. Os testes de fluxo de dados e das condições põem à prova lógica do programa, e os testes de laços complementam outras técnicas de caixa branca ao proporcionar um procedimento para exercitar laços de vários graus de complexidade.

    Os teste de caixa branca são "testes em pequeno porte" (testing in the small). A implicação dessa colocaçxão é que os teste de caixa branca são tipicamente aplicados a componentes de programas pequenos (Os módulos). Os testes de caixa preta, por outro lado, ampliam o nosso foco e poderiam ser denominados "testes em grande porte" (testing in the large ).
  • http://www.dcc.ufrj.br/~schneide/es/2000/1/a1/al13_20.htm

    O objetivo principal do projeto de casos de teste é derivar um conjunto de teste que tenham alta probabilidade de revelar defeitos no software. Para atingir esse objetivo, duas categorias diferentes de técnicas de projeto de caso de teste são usadas: O teste de caixa preta e o teste de caixa branca.
  • Teste de Funcionalidade

    Busca analisar as funcionalidades dos cenários conforme especificação, validando as regras de negócio. Além dos cenários básicos, são também verificadas contingências de acordo com os cenários de exceção. Em ciclos de teste contínuos, através do versionamento das liberações, podem ser realizados testes de regressão para garantir que funcionalidades já testadas continuam funcionando corretamente após alterações. Este tipo de teste é normalmente utilizado em todos os projetos, já que objetiva a correta implementação das regras de negócio do produto.
  • Teste de Interface

    Busca analisar a interface da aplicação testada, compreendendo navegação entre as janelas, preenchimento de campos e utilização de máscaras. São levadas em consideração contingências na interface, através da inserção de valores inválidos e tentativa de utilização inesperada das janelas. Este tipo de teste é tipicamente realizado em conjunto com teste funcional, buscando garantir a correta implementação das janelas, campos e textos.
  • Teste de Usabilidade

    Simula as condições de utilização do software sob a perspectiva do usuário final, focando na facilidade de navegação entre as janelas da aplicação, clareza dos textos e mensagens que são apresentadas ao usuário. Ao contrário de outros tipos de teste, não existe uma lista de itens pré-determinados a serem conferidos numa verificação padrão de usabilidade, pois cada cliente precisa ser avaliado de forma independente através de bom senso, experiência técnica e conhecimento de usabilidade (requerendo testadores especialistas). Contudo, estes testes tipicamente geram melhorias importantes na interface, tornando o aplicativo mais amigável e intuitivo, gerando maior satisfação do usuário final.
  • Teste de Carga/Performance

    Simula a utilização da aplicação por diversos usuários simultâneos, buscando encontrar problemas na infra-estrutura, hardware ou banda do servidor. Pode-se simular qualquer quantidade de usuários acessando o cliente, gerando relatórios complexos o suficiente para analisar cada serviço web de forma separada, possibilitando à Zero-Defect indicar qual web-service ou acesso ao banco está causando gargalo no sistema. Como este tipo de teste necessita de ferramentas especializadas, normalmente há a necessidade de orçar o valor da ferramenta a ser utilizada.
  • Teste de Recuperação

    Avalia o comportamento do sistema após ocorrência de erro, sobrecarga ou condições anormais, como queda de luz e rede. Nestes testes são tipicamente simulados cenários inesperados da mesma forma que ocorrem nos ambientes reais, como a remoção forçada de um cabo de rede, o desligamento repentino da energia, etc.
  • Teste de Configuração

    Valida os procedimentos de instalação e navegação básica de uma aplicação nos mais diversos ambientes (sistema operacional, browser, hardware, etc), além de avaliar se estes possibilitam as alternativas previstas nos requisitos identificados. Diversos ambientes de cliente e servidor podem ser simulados dentro da Zero-Defect, sendo que também é possível instalar ou utilizar peças de hardware específicas recebidas do cliente, caso necessário.
  • Teste de Configuração

    Valida os procedimentos de instalação e navegação básica de uma aplicação nos mais diversos ambientes (sistema operacional, browser, hardware, etc), além de avaliar se estes possibilitam as alternativas previstas nos requisitos identificados. Diversos ambientes de cliente e servidor podem ser simulados dentro da Zero-Defect, sendo que também é possível instalar ou utilizar peças de hardware específicas recebidas do cliente, caso necessário.
  • ===Letra A=== (ERRADO)

    Teste de caixa preta

    - Usa a especificação de um sistema para identificar as partições de equivalência.

    - Não é preciso de nenhum conhecimento de como funciona o sistema.

    - Também chamado de teste comportamental, focaliza os requisitos funcionais do software.

    - Tipos de teste de caixa preta: Particionamento e equivalência, Analise de valor limite, Teste baseado em modelos

    ===Letra B=== (ERRADO)

    Teste de caixa branca

    - Também chamado de teste da caixa-de-vidro, é uma filosofia do projeto de casos de teste que usa a estrutura de controle descrita como parte do projeto no nível de componentes para derivar casos de teste.

    - Pode-se olhar o código do programa para encontrar outros testes possíveis.

    - Trata-se de uma visão interna de um produto.

    - Tipos de teste de caixa branca: Teste de caminho básico, Teste de ciclo

    ===Letra C=== (ERRADO)

    Teste de integração: é uma técnica sistemática para construir a arquitetura de software ao mesmo tempo que conduz testes para descobrir erros associados com interfaces

    ===Letra D===

    O teste de recuperação é um teste de sistema que força o software a falhar de diversos modos e verifica se a recuperação é adequadamente realizada, seja ela feita de forma automática (realizada pelo próprio sistema) ou requerendo intervenção humana. (CERTO)

    ===Letra C=== (ERRADO)

    Teste alfa: os usuários do software trabalham com a equipe de desenvolvimento para testar o software no local do desenvolvedor.

    Teste beta: é conduzido nas instalações dos usuários finais. O desenvolvedor não está presente nesse teste.