Baixe o app para aproveitar ainda mais
Prévia do material em texto
· Pergunta 1 A percepção de qualidade de um software diz respeito a como este atende às necessidades do usuário final. Entretanto, para que isso aconteça, o software não pode apresentar falhas, por isso, deve passar por testes. Com base no conteúdo estudado, analise e assinale a alternativa que apresenta corretamente a constituição de um processo de teste em software: Resposta Selecionada: O software é testado por meio de uma sequência de ações, que têm como princípio a detecção de falhas, e consiste em um processo de testes. Resposta Correta: O software é testado por meio de uma sequência de ações, que têm como princípio a detecção de falhas, e consiste em um processo de testes. Comentário da resposta: Resposta correta. A resposta está correta, pois um teste – ou um processo de teste – consiste em uma sequência de ações executadas, com o objetivo de encontrar problemas no software; por vezes, o código código-fonte e funcionalidades são testados. · Pergunta 2 Quando um usuário se depara com um problema, já fala, apressadamente: “encontrei um bug no sistema”. Mas, afinal, o que é bug em um software? Algumas pessoas acreditam que seja algo relacionado a um incidente, problema, falha, anomalia etc. De acordo com as informações apresentadas e com o conteúdo estudado, podemos resumir um bug de software como: I - O software executa funcionalidades não previstas em sua especificação, entretanto, deveriam estar listadas nas especificações. II - Se um software não executar alguma funcionalidade prevista, isso se constituiria de um bug. III - Caso o software execute alguma funcionalidade de modo inesperado, que não deveria acontecer, essa ação pode ser considerada um bug. IV - O software pode passar a impressão, ao usuário, de não estar completo, caso este não apresente algum tipo de informação. É correto o que se afirma em: Resposta Selecionada: II e III, apenas. Resposta Correta: II e III, apenas. Comentário da resposta: Resposta correta. A resposta está correta, pois a afirmativa II apresenta corretamente o que é um bug, ao explicar que o software não executa uma função que deveria, segundo sua especificação. Nesse sentido, a afirmativa III também é verdadeira, pois o bug ocorre caso o software execute alguma coisa de modo inesperado, que não deveria acontecer, pois essa ação pode ser considerada um bug. · Pergunta 3 Os produtos que chegam para um usuário final para uso, geralmente passam por teste de qualidade, o que não é diferente para o usuário de um software, que passa por diversos tipos de testes, validações e verificações. Sendo assim, assinale a alternativa correta sobre os processos de testes pelos quais os softwares passam: Resposta Selecionada: Quando um software passa por um processo de teste, não podemos afirmar que está livre de falhas, pois podem aparecer com o uso. Resposta Correta: Quando um software passa por um processo de teste, não podemos afirmar que está livre de falhas, pois podem aparecer com o uso. Comentário da resposta: Resposta correta. A resposta está correta, haja vista que nenhuma equipe de qualidade aplicará testes em um software com o objetivo de garantir que o produto seja livre de defeitos. A certeza de que um programa não possui falhas, erros ou defeitos não é algo atingível no mundo real. Não se pode acreditar que o sistema não possui problemas se o teste aplicado não for capaz de revelá-los. · Pergunta 4 Alguns modelos de teste de software surgiram com base na necessidade de se aplicar testes mais rigorosos, outros, com base em metodologias voltadas ao desenvolvimento ágil de software. Conforme a contextualização apresentada e com base no conteúdo estudado, qual o tipo de teste surgiu no âmbito de desenvolvimento ágil: Resposta Selecionada: Test-Driven Development. Resposta Correta: Test-Driven Development. Comentário da resposta: Resposta correta. A resposta está correta, pois o TDD (Test-Driven Development, ou Desenvolvimento Voltado a Testes) constitui um formato de teste muito parecido com o “codificar e testar”, modelo de desenvolvimento no qual não se dá ênfase a outras etapas, senão as de codificar e testar. Outra característica relevante dessa modalidade é que foi concebida no âmbito da metodologia XP (Extreme Programming), criada para desenvolvimento ágil de software. · Pergunta 5 Hoje em dia, tecnologias que suportam linguagens orientadas a objeto (como o Java) permitem não só́ a automatização dos testes – ação tão importante no âmbito do TDD – como também a execução de partes autônomas de um programa, como uma classe, por exemplo. NETO, R. M. Engenharia de software. Londrina: Editora e Distribuidora Educacional S.A., 2016. Para efetuar um TDD, podemos guiar os testes por meio de uma sequência lógica. Sobre os passos de um desenvolvimento guiado, assinale a afirmativa correta: Resposta Selecionada: Podemos guiar o TDD por meio de dois passos básicos: selecionando um conjunto de casos de teste e executando-os; caso seja encontrado algo, a falha será ajustada, caso não encontre falhas, o processo é reiniciado. Resposta Correta: Podemos guiar o TDD por meio de dois passos básicos: selecionando um conjunto de casos de teste e executando-os; caso seja encontrado algo, a falha será ajustada, caso não encontre falhas, o processo é reiniciado. Comentário da resposta: Resposta correta. A resposta está correta, pois os passos são bem simples. Inicia-se com a seleção de um conjunto de casos de teste; após isso, executa-se o caso de teste. Caso seja encontrado defeito, o código deverá ser ajustado. Caso não se encontre defeito, um novo conjunto de casos de teste deve ser selecionado e o processo deve ser reiniciado. NETO, R. M. Engenharia de software. Londrina: Editora e Distribuidora Educacional S.A., 2016. · Pergunta 6 Um caso de teste é, basicamente, uma análise sobre as entradas no programa, e o que se corresponde como saída esperada, baseado nos requisitos do sistema. Podemos considerar que os valores de entrada e saída são, respectivamente: Resposta Selecionada: A entrada corresponde às informações que podem ser inseridas no sistema, e as saídas esperadas são as validações e apresentação de informações que o sistema poderá apresentar. Resposta Correta: A entrada corresponde às informações que podem ser inseridas no sistema, e as saídas esperadas são as validações e apresentação de informações que o sistema poderá apresentar. Comentário da resposta: Resposta correta. A resposta está correta, tendo em vista que o conceito de entrada relaciona-se com o conjunto de dados necessários para a execução do programa. A saída esperada é o resultado de uma execução do programa ou função específica. Exemplo da inserção de valores de produtos, um caso de teste possível seria: (200; válido). Ao receber a entrada 200, o programa de validação de valores deveria retornar “valor válido”. · Pergunta 7 Na execução de um teste de unidade automatizado, a execução dos casos de teste pode-se utilizar de ferramentas para registrar as falhas e relatar ao programador responsável pela aplicação do teste. É possível compreender que a aplicação de casos de teste por meio de ferramentas é uma das opções mais completas de teste de unidade. Com base no exposto e conforme o conteúdo estudado, selecione a alternativa correta sobre algumas ferramentas utilizadas em testes automatizados: Resposta Selecionada: A NUnit é um framework de código aberto, em que são suportados testes que podem ser executados em paralelo, atuando com a programação .net. Resposta Correta: A NUnit é um framework de código aberto, em que são suportados testes que podem ser executados em paralelo, atuando com a programação .net. Comentário da resposta:Resposta correta. A resposta está correta, pois NUnit é um framework amplamente usado para testes unitários de programas .net. É uma ferramenta de código aberto, que permite escrever scripts manualmente. Ele suporta testes baseados em dados, que podem ser executados em paralelo. · Pergunta 8 Sua resposta está incorreta. A resposta está incorreta, pois podemos considerar as entradas do programa os inputs de dados e as saídas esperadas, as ações ou expressões, que podem ser apresentadas pelo usuário no output. Resposta Selecionada: Definição do ambiente em que acontecerá o teste, definir a entrada do caso de teste como também a saída esperada e, por fim, os passos para a execução dos testes. Resposta Correta: Definição do ambiente em que acontecerá o teste, definir a entrada do caso de teste como também a saída esperada e, por fim, os passos para a execução dos testes. Comentário da resposta: Resposta correta. A resposta está correta, pois devem-se considerar as seguintes situações para realizar os casos de teste corretamente: definir o ambiente no qual o teste será́ realizado; definir a entrada desse caso de teste; definir a saída esperada para cada entrada e, por fim, definir os passos a serem realizados para executar os testes. · Pergunta 9 Ao implementar um caso de teste em um software, o seu resultado deve ser coletado para então ser analisado. Os dados coletados podem representar diferentes abordagens sobre o resultado da aplicação de um caso de teste, sendo eles: I - Caso a análise dos resultados explicite que nem todos os passos foram executados com sucesso, podemos afirmar que o caso de teste falhou. II - Se o resultado explicitar que todos os passos foram executados com sucesso, atestamos que o software passou. III - No cenário em que os testes não podem ser executados por conta de configurações de ambiente, pode-se afirmar que houve bloqueio sobre os casos de teste. É correto o que se afirma em: Resposta Selecionada: I, II e III estão corretas. Resposta Correta: I, II e III estão corretas. Comentário da resposta: Resposta correta. A resposta está correta, pois a afirmativa I é verdadeira, já que apresenta um caso de falha, em que nem todos os passos foram executados com sucesso para uma ou mais entradas. A afirmativa II é verdadeira, pois apresenta um caso de teste em que o software passou, considerando que todos os passos do caso de teste foram executados com sucesso para todas as entradas. Por fim, a afirmativa III também é verdadeira, pois apresenta um caso de bloqueio em que o teste não pôde ser executado, pois o seu ambiente não pôde ser configurado. · Pergunta 10 Todo e qualquer software passa por um processo de teste, o qual tem como objetivo a detecção de falhas. Podemos dizer que o processo de teste segue um ciclo de vida, conforme as afirmações a seguir: I - Um processo de teste se inicia com o planejamento, etapa em que serão definidos os testes a serem executados e quais as técnicas a serem utilizadas. II - No projeto de casos de teste inicia-se o processo efetivamente, começando pelo teste de caixa branca. III - Na etapa de execução do programa com os casos de teste, são observados como os de carga e caixa preta são aplicados, e são analisados os resultados preliminares. IV - A última etapa de um processo de teste é a análise de resultados, em que são verificados se os resultados são satisfatórios. Está correto apenas o que se afirma em: Resposta Selecionada: I e IV. Resposta Correta: I e IV. Comentário da resposta: Resposta correta. A resposta está correta, pois a afirmativa I é verdadeira, já que é na fase de planejamento que será feita a decisão de quem executa os testes; define-se também quais serão os recursos utilizados, como computadores e ferramentas de teste, por exemplo, e define-se, também, qual a técnica a ser utilizada: técnica estrutural ou técnica funcional, por exemplo. A afirmativa IV é verdadeira, pois na etapa de análise dos resultados verifica-se se os testes retornaram resultados satisfatórios.
Compartilhar