Questões de Concurso Sobre teste de software em engenharia de software

Foram encontradas 1.364 questões

Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918911 Engenharia de Software
Considere as seguintes afirmações sobre testes automatizados.
I - Pode-se usar um framework de automação de teste (como JUnit) para escrever e executar testes de seu programa. Frameworks de testes unitários fornecem classes de teste genéricas que se podem estender para criar casos de teste específicos. Eles podem, então, executar todos os testes que foram implementados e informar, muitas vezes por meio de alguma interface gráfica, sobre o sucesso ou o fracasso dos testes. Um conjunto inteiro de testes frequentemente pode ser executado em poucos segundos e assim é possível executar todos os testes cada vez que é feita uma alteração no programa. II - Têm tipicamente três partes: (i) uma parte de configuração, em que se inicia o sistema com o caso de teste, ou seja, as entradas e saídas esperadas; (ii) uma parte de chamada, quando se chama o objeto ou método a ser testado; e (iii) uma parte de afirmação (ou asserção), em que se compara o resultado da chamada com o resultado esperado. Se a afirmação avaliada for verdadeira, o teste foi bem-sucedido; se for falsa, o teste falhou. III - Às vezes, o objeto que está sendo testado tem dependências em outros objetos que podem não ter sido escritos ou que atrasam o processo de teste quando são usados. Por exemplo, se o objeto chama um banco de dados, isso pode implicar um processo lento de instalação, antes que possa ser usado. Nesses casos, pode-se decidir usar um mock object. Mock objects são objetos com a mesma interface que os objetos externos usados para simular sua funcionalidade. Da mesma forma, mock objects podem ser usados para simular operações anormais ou eventos raros.
Quais estão corretas?
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918910 Engenharia de Software
Considere os seguintes critérios baseados em fluxo de controle para realizar teste estrutural.
I - Todos-caminhos: requer que todos os caminhos possíveis do programa sejam executados. II - Todos-nós: requer que cada comando do programa seja executado pelo menos uma vez. III - Todas-arestas: requer que cada desvio de fluxo de controle do programa seja exercitado pelo menos uma vez.
Quais estão corretos?
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918909 Engenharia de Software
____________ é uma técnica utilizada para se projetar casos de teste, na qual o programa ou sistema é considerado como uma caixa-preta. Nesta técnica os detalhes de implementação não são considerados e o software é avaliado segundo o ponto de vista do usuário, procurando explorar determinados tipos de defeitos, estabelecendo requisitos de teste para os quais valores específicos do domínio de entrada do programa devem ser definidos com o intuito de exercitá-los. Utilizando ____________, o domínio de entrada é reduzido a um conjunto de estados válidos ou inválidos para as condições de entrada, e com um tamanho passível de ser tratado durante a atividade de teste.
Assinale a alternativa que preenche correta e respectivamente as lacunas do texto acima.
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918906 Engenharia de Software
_____________ verifica novamente os casos de teste aprovados em versões prévias do software e assim protege contra alterações indesejadas. Realiza-se durante a manutenção, para mostrar que as modificações efetuadas estão corretas, ou seja, que os novos requisitos implementados funcionam como o esperado e que os requisitos anteriormente testados continuam válidos.
Assinale a alternativa que preenche corretamente a lacuna do texto acima.
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918905 Engenharia de Software
_____________ é uma verificação de consistência entre o sistema de software e sua especificação e, portanto, é uma atividade de verificação feita depois que se tem o sistema completo, com todas suas partes integradas para verificar se as funcionalidades especificadas nos documentos de requisitos estão todas corretamente implementadas. Este tipo de teste é focado principalmente na descoberta de falhas e executado pelo grupo de desenvolvimento de testes, tendo também um papel importante para avaliar se o produto pode ser liberado para os consumidores, o que é diferente do seu papel de expor falhas que são removidas para melhorar o produto.
Assinale a alternativa que preenche corretamente a lacuna do texto acima.
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918904 Engenharia de Software
____________ é o teste que tem como foco as menores unidades de um programa, que podem ser funções, procedimentos, métodos ou classes. Neste contexto, espera-se que sejam identificados erros relacionados a algoritmos incorretos ou mal implementados, estruturas de dados incorretas ou simples erros de programação. Como cada unidade é testada separadamente, este teste pode ser aplicado à medida que ocorre a implementação e pelo próprio desenvolvedor, sem a necessidade de dispor-se do sistema totalmente finalizado.
Assinale a alternativa que preenche corretamente a lacuna do texto acima.
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918903 Engenharia de Software
Considere as seguintes afirmações sobre o Modelo "V" de teste de software.
I - Descreve a relação entre ações de garantia da qualidade e as ações associadas à comunicação, modelagem e atividades iniciais de construção. II - À medida que a equipe de software desce em direção ao lado esquerdo do "V", os requisitos básicos do problema são refinados em representações, progressivamente, mais detalhadas e técnicas do problema e de sua solução. Ao ser gerado o código, a equipe se desloca para cima, no lado direito do "V", realizando basicamente uma série de testes que validem cada um dos modelos criados, à medida que a equipe se desloca para baixo, no lado esquerdo do "V". III - Fornece uma forma para visualizar como a verificação e as ações de validação são aplicadas ao trabalho de engenharia anterior.
Quais estão corretas?
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918902 Engenharia de Software
Considere as seguintes afirmações sobre objetivos de teste.
I - A definição dos critérios de aceitação deve idealmente ocorrer depois do contrato do sistema ser assinado, pois os critérios de aceitação não fazem parte do contrato, embora possam ser acordados entre o cliente e o desenvolvedor. II - O processo de teste deve demonstrar ao desenvolvedor e ao cliente que o software atende aos requisitos propostos. III - Um dos objetivos do processo de teste é descobrir situações em que o software se comporte de maneira incorreta, indesejável ou de forma diferente das especificações.
Quais estão corretas?
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918901 Engenharia de Software
Considere as seguintes afirmações sobre a relação entre requisitos e teste de software.
I - A correção, a completude e a consistência do modelo de requisitos não terão forte influência sobre a qualidade de todos os produtos seguintes do desenvolvimento de software, pois o que importa para o teste é o código fonte. II - Um dos princípios gerais das boas práticas de engenharia de requisitos é que os requisitos devem ser testáveis, isto é, o requisito deve ser escrito de modo que um teste possa ser projetado para ele. Um testador pode então verificar se o requisito foi satisfeito. III - Testes baseados em requisitos são uma abordagem sistemática para projeto de casos de teste em que cada requisito é considerado, derivando-se, assim, um conjunto de testes para ele.
Quais estão corretas?
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918897 Engenharia de Software
As alternativas abaixo apresentam características importantes que devem ser consideradas para o teste de aplicativos móveis, EXCETO uma. Assinale-a.
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918896 Engenharia de Software
Assinale a alternativa que apresenta os estados possíveis de um defeito, definidos por padrão, na ferramenta MantisBT 2.0.
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918891 Engenharia de Software
A técnica de teste caixa-preta foi aplicada a uma dada especificação gerando as seguintes partições do domínio de entrada:
C1: [A, B, C] C2: [1,2,3,4] C3: [*, !]
Qual a quantidade mínima de testes que devem ser gerados usando a técnica de teste pairwise (combinação de pares)?
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918890 Engenharia de Software
Assinale a situação em que melhor se aplica a técnica de teste pairwise (combinação de pares).
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918889 Engenharia de Software
Numere a segunda coluna de acordo com a primeira, associando os Níveis de Teste de Software às suas respectivas características.
(1) Teste de Unidade (2) Teste de Integração (3) Teste de Sistema (4) Teste de Aceitação
( ) Avalia o software com respeito ao projeto de seus subsistemas e detecta suposições errôneas sobre pré e pós-condições para execução de um componente, falhas nas interfaces de comunicação dos componentes do software. ( ) Avalia o software com respeito aos seus requisitos e detecta falhas nos requisitos e na interface com o usuário. ( ) Avalia o software com respeito a sua implementação detalhada e detecta falhas de codificação, algoritmos ou estruturas de dados incorretos ou mal implementados. ( ) Avalia o software com respeito ao seu projeto arquitetural e detecta falhas de especificação, desempenho, robustez e segurança.
A sequência correta de preenchimento dos parênteses, de cima para baixo, é
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918888 Engenharia de Software
Considere as seguintes definições de custos envolvidos no projeto e no teste de um sistema de software:
C1 = custo das atividades de verificação e validação. C1 é calculado através dos custos de pessoal, equipamentos, licenças de software e demais recursos gastos em projetos anteriores similares que tiveram atividades de verificação e validação.
C2 = custo dos defeitos não encontrados pelas atividades de verificação e validação executadas durante o desenvolvimento do software. C2 é estimado através dos custos de remoção dos defeitos para o sistema em produção e contabilizando o total de defeitos encontrados pelos usuários.
C3 = custo dos defeitos quando não há atividades de verificação e validação. C3 é estimado usando dados históricos de projetos anteriores similares que não tiveram atividades de verificação e validação. Contabilizam-se os custos de remoção dos defeitos para o sistema em produção e o total de defeitos encontrados pelos usuários.
A partir dessas definições, a aplicação das atividades de verificação e validação é economicamente justificável quando:
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918887 Engenharia de Software
Segundo Pezzè & Young, nenhuma técnica de teste ou de análise pode servir sozinha a todos os objetivos de verificação e validação de um software. Todas as afirmativas abaixo são razões primárias para a combinação de técnicas de verificação, validação e teste, EXCETO uma. Assinale-a.
Alternativas
Ano: 2018 Banca: FAURGS Órgão: BANRISUL Prova: FAURGS - 2018 - BANRISUL - Teste de Software |
Q918886 Engenharia de Software

Considere o seguinte código.


/ / Se x é null, lança uma exceção do tipo NullPointerException

/ / Se não, retorna o índice do último elemento em x que é igual a y.

/ / Se esse elemento não existe, retorna -1.


public int findLast (int[] x, int y) {

for (int i=x.length-1; i > 0; i --)

{

if (x[i] == y)

return i;

}

return -1;

}


Para o código acima, foi definido o seguinte caso de teste:


x = [3,2,5,3], y = 3

Resposta esperada: 3


É correto afirmar que esse caso de teste

Alternativas
Q915430 Engenharia de Software
Sobre teste de regressão de software, são verdadeiras as afirmativas abaixo, EXCETO:
Alternativas
Q914375 Engenharia de Software
Controles e Testes de Segurança são objeto de atenção do desenvolvedor de sistemas, sempre que estiver codificando para o ambiente Web. Nesse contexto, a Open Web Application Security Project (OWASP), comunidade dedicada à segurança na Web, organizou, em seu site institucional, um guia de boas práticas de programação, assim como um guia de testes de segurança para aplicações web (OWASP Testing Guide), atualmente na versão 4.0. Assinale a opção que contém um princípio dos testes, de acordo com o OWASP Testing Guide 4.0.
Alternativas
Q914373 Engenharia de Software
Eduardo é o líder técnico do Sistema de Vendas de uma rede de farmácias. O sistema deve ser utilizado em mais de 40 unidades espalhadas por vários estados. O sistema entrou em produção e, já na primeira semana de uso, ficou muito lento e diversas vezes indisponível para os operadores das lojas. Diante deste cenário, assinale a opção que indica a técnica de teste que foi negligenciada.
Alternativas
Respostas
661: E
662: E
663: A
664: A
665: A
666: C
667: E
668: D
669: D
670: A
671: E
672: C
673: D
674: A
675: C
676: A
677: B
678: B
679: C
680: C