SóProvas


ID
1460197
Banca
FCC
Órgão
CNMP
Ano
2015
Provas
Disciplina
Engenharia de Software
Assuntos

Testes de software buscam por erros ou anomalias em requisitos funcionais e não funcionais. É INCORRETO afirmar que o teste de unidade

Alternativas
Comentários
  • Fiquei na dúvida nesta.

    Pois o teste de unidade, a ideia é testar a menor unidade possível de um código... para testar um módulo, seria o teste de integração


    Mas o final da Letra C é muito tosco..


    não tem como não marcar a C

  • Também fiquei em dúvida em relação ao teste estrutural descrito na letra a) mas a letra C parece ser a mais errada mesmo..

  • Engenharia de Software / Ian Sommerville  9. edição

    Capítulo 8 - Testes de software

    Um teste automatizado tem três partes:
    1. Uma parte de configuração, em que você inicia o sistema com o caso de teste, ou seja, as entradas e saídas esperadas.
    2. Uma parte de chamada, quando você chama o objeto ou método a ser testado.
    3. Uma parte de afirmação, em que você compara o resultado da chamada com o resultado esperado. Se a afirmação avaliada for verdadeira, o teste foi bem-sucedido; se for falsa, ele falhou.

  • Não há o que ter duvida aí nessa questão

    Querem ter uma certeza de que é a letra C? Leiam a página 407 Capitulo 17 do livro do Pressan 7º Edição.

  • Acho o que invalidou a assertiva foi dizer que ele "corrige automaticamente os erros".

    quem faz isso é o tipo de teste debugging que é o processo que resulta na remoção de um erro encontrado. Ocorre como uma consequência de um teste de sucesso (um teste que encontrou erros) ou seja, erro encontrado no teste unitário.

  • A questão foi uma combinação dos textos de pressman e do sommerville. Para evitar ter de decorar, você poderia acertar a questão lembrando que o Teste unitário é um nível/fase de teste. Ou seja,  você faz os teste necessários no nível de uma pequena unidade funcional (método, classe, objeto, componente,etc). Vejamos os itens.

    a) Esse é teste de caminho básico. 

    b) Aqui é preciso ter cuidado. O teste foi da interface com a unidade isolada. Por exemplo, você testou a interface de um objeto/método e não a inteface resultante da combinação de outros objetos ou da comunicação entre esses objetos. Senão estaria errado esse item, pois estaríamos falamos do nível de integração (teste de componente)

    c)  Ao fazer um teste, passamos entradas e comparamos a saída com a que deveria ser correta. Sommerville para sistematiza fala em 3 etapas. Configuração (Passo para o meu sistema de teste as entradas e saída esperar, também faço qq inicialização/configuração necessária), chamada (rodamos efetivamente o teste) e afirmação (comparamos o resultados: a saída obtida e a esperada. Se bateu passou, senão o teste falhou). A questão falou em Configuração, Comparação e Correção. As duas primeiras não vi problemas na definição. O erro está na terceira etapa. Correção "que corrige automaticamente os erros". Isso não faz sentido por causa do automaticamente. Se não tivesse esse automaticamente, seria razoável, basta lembrar do refactorin do TDD.  

    d) Quando usamos partições de equivalência é comum testar os limites das regiões dessa partições. A afirmação também lembra um teste de desempenho. 

    e)  Pode-se escolher um terminado caminho de execução para verificar algum erro, como os exemplos citados

     

  • Corrige automaticamente os erros? Teste Ninja.