Baixe o app para aproveitar ainda mais
Prévia do material em texto
A2 - QUALIDADE E TESTE DE SOFTWARE GR2952-212-9 · Pergunta 1 1 em 1 pontos 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 2 1 em 1 pontos O ciclo de vida da garantia da qualidade de software não se inicia com os testes aplicados nos módulos completos e todos unidos. Pensando nisso, podem-se aplicar testes de unidade no decorrer da codificação do software. Sobre o teste de unidade, analise as afirmativas a seguir: I - Os testes de unidade podem ser aplicados de forma manual ou por meio de Frameworks de automatização. II - Os testes manuais acontecem sem precisar seguir o documento de requisitos, sendo, assim, uma opção de teste rápido. III - Em um teste de unidade automatizado, é possível elaborar casos de teste, utilizando-se de ferramentas para implementar os casos de teste. Com base no contexto apresentado, é correto o que se afirma em: Resposta Selecionada: I e III, apenas. Resposta Correta: I e III, apenas. Comentário da resposta: Resposta correta. A alternativa selecionada está correta, pois a afirmativa I é verdadeira, já que a aplicação do teste de unidade pode ser feita de forma manual ou automatizada, com o uso de aplicações específicas. A afirmativa III também é verdadeira, tendo em vista a facilidade e conveniência que proporciona o teste automatizado, que tem sido mais usado pelos programadores. Pode-se usar uma aplicação de teste de unidade (que comumente é chamada Framework UnitTest) para desenvolver casos de testes automatizados. · Pergunta 3 1 em 1 pontos 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 4 0 em 1 pontos Durante os processos de testes de qualidade de um software, devemos nos atentar em não aplicar esses testes apenas no módulo, quando o sistema já está desenvolvido e pronto para ser entregue ao usuário. Alguns testes são necessários durante a codificação, sendo um deles o teste de unidade. Com base no exposto e no conteúdo estudado, assinale a afirmativa que contenha o objetivo de um teste de unidade: Resposta Selecionada: Um teste de unidade analisa o código-fonte de um sistema, separado por módulos, em que é analisado como esse código pode ser interpretado pelo usuário. Resposta Correta: Em um teste de unidade, analisa-se a corretude do código, separando cada parte do sistema e testando-a de modo separado. Comentário da resposta: Sua resposta está incorreta. A resposta está incorreta, pois o teste de unidade aplica o teste nos módulos separados; caso fosse aplicado algum tipo de teste adicional, teria de ser o de caixa-branca, pois se tem conhecimento do código-fonte; teste de caixa-preta é aplicado quando não sabemos nada sobre o código. · Pergunta 5 0 em 1 pontos 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: As definições de estratégias de casos de teste, aplicadas sobre o conjunto de validações e verificações dos requisitos. 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: Sua resposta está incorreta. A resposta está incorreta, já que 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 6 1 em 1 pontos A aplicação de casos de teste para aferir a qualidade de um software tem como finalidade analisar os módulos desenvolvidos. Entretanto, deve-se considerar testes que possam interagir e vincular os módulos testados, para verificar que estes estão em conformidade com outros módulos. Com base no excerto e no conteúdo estudado, assinale a alternativa que corresponde ao tipo de teste apresentado nessa questão. Resposta Selecionada: Casos de teste no teste de integração. Resposta Correta: Casos de teste no teste de integração. Comentário da resposta: Resposta correta. A resposta está correta, pois, nos casos de teste de integração, o objetivo não é encontrar defeitos nos módulos individualmente, já que essa providência já foi tomada no teste de unidade. A tarefa, aqui, se resume em checar as vinculações, se a integração entre a caixa de correio e a funcionalidade de exclusão de e-mails compõem nossa principal atividade, e se cada módulo está integrado de modo correto. · Pergunta 7 1 em 1 pontos Durante o processo de teste de um software podemos nos deparar com problemas. Entretanto, nesse processo não é identificado o ponto de falha. Para esse fim, é aplicado o processo de depuração. Analise as afirmativas a seguir e assinale qual corresponde ao objetivo do processo de depuração: Resposta Selecionada: Ao se aplicar a depuração, é possível identificar o ponto exato do código-fonte que está apresentando falha. Resposta Correta: Ao se aplicar a depuração, é possível identificar o ponto exato do código-fonte que está apresentando falha. Comentário da resposta: Resposta correta. A alternativa A está correta, pois a depuração tem como função apontar o local exato do defeito no código-fonte. · Pergunta 8 1 em 1 pontos Segundo Rungta (2018), o teste de regressão é definido como um tipo de teste aplicadopara confirmar que um programa recente ou alteração de código não afetou adversamente os recursos existentes. RUNGTA, K. Learn Testing in 1 Day: definitive guide to learn software testing for beginners. Kindle, 2018. Por ser um teste que considera possíveis inclusões e alterações em um software, aplica uma sequência de testes específica. Com base no conteúdo estudado, assinale a alternativa que contenha o procedimento de aplicação de um teste de regressão. Resposta Selecionada: São executados novamente todos, ou parcialmente, os casos de teste, com o objetivo de garantir que as funcionalidades estejam de acordo com o esperado. Resposta Correta: São executados novamente todos, ou parcialmente, os casos de teste, com o objetivo de garantir que as funcionalidades estejam de acordo com o esperado. Comentário da resposta: Resposta correta. A resposta está correta, pois, com relação à aplicação de um teste de regressão, o procedimento prevê a seleção total ou parcial de casos de teste já executados e a sua reexecução, com a finalidade de garantir que as funcionalidades estejam intactas. RUNGTA, K. Learn Testing in 1 Day: definitive guide to learn software testing for beginners. Kindle, 2018. · Pergunta 9 1 em 1 pontos Para assegurar a qualidade de um produto, este deve ser testado antes de ser entregue ao cliente. Isso acontece com alimentos, eletrodomésticos, eletrônicos, celulares, carros, dentre outros produtos e serviços. Um software também passa por processos de teste de qualidade seguindo o seguinte princípio: Resposta Selecionada: Cada módulo entregue será testado de modo isolado antes de ser avaliado em conjunto com o sistema como um todo. Resposta Correta: Cada módulo entregue será testado de modo isolado antes de ser avaliado em conjunto com o sistema como um todo. Comentário da resposta: Resposta correta. A alternativa selecionada está correta, pois podemos dizer que as partes planejadas durante o projeto, as quais podemos chamar de unidades, deverão passar por testes isolados, antes de serem avaliadas em conjunto com todo o restante do sistema. · Pergunta 10 1 em 1 pontos 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.
Compartilhar