Questões de Concurso sobre Testes de Software

 
 
Disciplina
Assunto 1
Banca
Instituição
Cargo
Ano
Carreira
Área de formação
Escolaridade
Dificuldade
 
Comentários:
Professores
Alunos
Meus Comentários
Vídeo
 
Minhas questões:
Resolvidas
Não resolvidas
Certas
Erradas
 
Tipo de questão:
Certo e errado
Múltipla escolha
Incluir questões:
Anuladas
Desatualizadas
 
Questões:
Todas as questões
 
Filtro simplificado
 
Questões
Todas as questões
 
621 questões encontradas
Questões por página
20
Mais recentes
 

Durante a construção de uma aplicação, um Técnico de TI está utilizando o Visual Studio e deseja aumentar a cobertura de testes automatizados para reduzir regressões. Diante do exposto, analise as sentenças a seguir:


I- NUnit é um framework de testes unitários no ecossistema .NET

II- NUnit é um servidor web utilizado para hospedar testes de aplicações ASP.NET

III- Testes unitários dispensam testes de integração e testes de sistema.

IV- Testes unitários são úteis para regressão automatizada e feedback rápido.


Analisadas as sentenças, estão CORRETAS apenas:


A

I e II.


B

I e III.


C

I e IV.


D

II e III.

Os microsserviços devem ser submetidos a testes de código, que verificam a unidade e a integração, e a testes de carga, que simulam mudanças na quantidade de acionamento.


C

Certo


E

Errado

O Analista de Testes precisa, às vezes, envolver-se e auxiliar na implementação, supervisão e manutenção de sistemas de informação. Os testes de software são fundamentais para garantir a qualidade, a confiabilidade e a conformidade do sistema antes e após sua implantação. Sendo assim, sobre testes de software, considerando boas práticas amplamente adotadas na engenharia de software, analise as assertivas a seguir.


I. O teste de integração tem como objetivo verificar a comunicação e a interação entre módulos ou componentes do sistema após terem sido testados individualmente.

II. O teste de sistema avalia o sistema como um todo, validando se ele atende aos requisitos funcionais e não funcionais especificados.

III. O teste de caixa branca é geralmente executado pelo usuário final ou por representantes do negócio, com foco na validação do sistema funcional em relação às necessidades do cliente.

IV. O teste unitário é realizado, preferencialmente, nas fases finais do desenvolvimento, quando o sistema já está completamente integrado aos requisitos funcionais e não funcionais.

V. Testes de regressão têm como objetivo verificar se alterações no código introduziram novos defeitos em funcionalidades que já estavam funcionando corretamente.


Está CORRETO o que se afirma em:


A

I, II e V, apenas.


B

II, III e IV, apenas.


C

I, II e IV, apenas.


D

II, IV e V, apenas.


E

I, III e V, apenas.

Durante o desenvolvimento de um sistema acadêmico, a equipe de TI realizava diferentes tipos de testes. Um dos testes era realizado sem acessar o código do sistema. No outro teste, a equipe avaliava a estrutura interna do código, verificando caminhos lógicos, repetições e condições.


Com base nos conceitos de teste de software assinale a alternativa CORRETA.


A

Para avaliar a estrutura interna do código-fonte da aplicação devemos utilizar o teste do tipo caixa preta.


B

O teste de caixa branca verifica apenas a interface gráfica do sistema.


C

O teste de caixa branca é utilizado exclusivamente para medir o desempenho da rede.


D

O teste do tipo caixa preta avalia apenas as entradas e saídas do sistema sem conhecimento da implementação interna do sistema.


E

Os dois tipos de testes, caixa branca e caixa preta, devem ser obrigatoriamente utilizados em conjunto.

De acordo com o princípio do early testing, o planejamento das atividades de teste deve ter início nas fases iniciais do desenvolvimento, o que tende a reduzir o custo e o esforço de correção de defeitos.


C

Certo


E

Errado

A menos que esteja expresso de forma diferente no edital, os testes e demais provas exigidos por normas técnicas são de responsabilidade do contratante, quando entidade pública.


C

Certo


E

Errado

Uma transportadora desenvolve um módulo de cálculo de ICMS sobre frete em seu sistema de gestão em que há uma função pura CalcularICMS (Itens, UFOrigem, UFDestino) que, a partir dos Itens e UFs, devolve apenas os valores de imposto, sem acesso a banco de dados, rede ou arquivos. A equipe deseja automatizar verificações dessa função em diferentes combinações de alíquotas e bases de cálculo. Nesse cenário, o tipo de teste indicado para esse objetivo específico é teste


A

de integração chamando serviços externos da SEFAZ em ambiente de homologação.


B

de sistema cobrindo todo o fluxo de emissão do documento fiscal de transporte até a autorização.


C

de aceitação com cenários BDD descritos por especialistas fiscais.


D

unitário que executa a função CalcularICMS em isolamento, conferindo entradas e saídas.


E

de carga aplicando grande volume de documentos simultâneos ao módulo de cálculo.

A atividade de testes é essencial para a garantia da qualidade de software, sendo aplicada em diferentes níveis e com objetivos distintos ao longo do ciclo de desenvolvimento. Considerando os diversos tipos de testes de software, informe se é verdadeiro (V) ou falso (F) o que se afirma a seguir e assinale a alternativa com a sequência correta.


( ) O teste unitário tem por finalidade avaliar o sistema completo e integrado, verificando sua conformidade com os requisitos especificados.

( ) O teste de integração tem como objetivo identificar falhas na comunicação e na interação entre módulos ou componentes do sistema.

( ) O teste de regressão é realizado após modificações no sistema, com o propósito de verificar se funcionalidades previamente implementadas continuam operando corretamente.

( ) O teste caixa branca fundamenta-se na análise da estrutura interna do código, considerando fluxos lógicos, decisões e caminhos de execução.


A

F – V – V – V.


B

V – V – F – V.


C

F – V – F – V.


D

V – F – V – F.


E

F – F – V – V.

Dentre as melhores práticas de testes de software, para sistemas maiores, são frequentemente usadas ferramentas para automatizar tarefas. Uma abordagem sólida de testes abrange a interface de programação de aplicativos (ou Application Programming Interface, API), a interface do usuário e os níveis de sistema.


A aplicação do teste de regressão busca


A

verificar se as interfaces entre componentes de software funcionam de forma correta e confiável.


B

tentar quebrar ou encontrar falhas em uma aplicação sem seguir testes ou documentação predefinidos.


C

verificar se as funções básicas de uma aplicação funcionam


D

garantir que mudanças recentes não tenham introduzido novos defeitos.


E

examinar a quantidade de esforço que o sistema pode suportar antes de falhar.

Nos testes de caixa‑preta, a elaboração de casos de teste pode basear‑se na especificação funcional esperada do sistema, independentemente do conhecimento da estrutura interna do código.


C

Certo


E

Errado

O pytest é um framework de testes, amplamente usado em Python, que prioriza simplicidade e legibilidade. Uma de suas principais características é a capacidade de testar exceções de forma elegante, permitindo validar tanto quando uma exceção deve ser levantada quanto verificar mensagens específicas de erro. Considere a seguinte função que valida idades:


def validar_idade(idade):

if idade < 0:

raise ValueError(“Idade não pode ser negativa”)

if idade > 150:

raise ValueError(“Idade deve ser menor que 150”)

return True


Analise as implementações de teste a seguir e identifique qual segue corretamente as convenções do pytest e testa adequadamente as exceções:


A

import pytest

def test_validar_idade():

assert validar_idade(25) is True


with pytest.raises(ValueError, match=”Idade não pode ser negativa”):

validar_idade(-5)


with pytest.raises(ValueError, match=”Idade deve ser menor que 150”):

validar_idade(200)


B

import pytest

def validar_idade_test():

try:

validar_idade(-5)

assert False

except TypeError:

pass

assert validar_idade(25) is True


C

import pytest

def validar_idade_test():

assert validar_idade(25) is True


with pytest.raises(ValueError,

match=”Idade não pode ser negativa”):

validar_idade(-5)


with pytest.raises(ValueError,

match=”Idade deve ser menor que 150”):

validar_idade(200)


D

import pytest

def test_validar_idade():

try:

validar_idade(-5)

assert False

except TypeError:

pass

assert validar_idade(25) is True

São processos realizados nos quais scripts ou ferramentas de software executam casos de teste para verificar se um sistema ou aplicação funciona corretamente ou da forma esperada. Estes processos são projetados para substituir ou complementar determinadas operações manuais, viabilizando maior eficiência, precisão e repetibilidade. São exemplos de ferramentas amplamente utilizadas nestes processos: selenium, JUnit, PyTest e Appium. Esses processos são?


A

Rastreabilidade de mudanças.


B

Integração contínua.


C

Testes automatizados.


D

Versionamento de código.

A realização de testes automatizados pode aumentar a eficiência do processo de teste de software, o que permite a execução rápida e repetitiva de casos de teste.


C

Certo


E

Errado

O teste de software é essencial para identificar e corrigir defeitos antes que o produto seja lançado, garantindo-se, assim, que o software atenda aos requisitos de qualidade definidos.


C

Certo


E

Errado

O Ciclo de Vida de Desenvolvimento de Software é um processo estruturado que guia a criação e manutenção de sistemas de software, desde a concepção inicial até a entrega final e suporte contínuo. Assinale a alternativa correta que descreve o objetivo da documentação de testes em um ciclo de desenvolvimento de software.


A

Listar os erros corrigidos após o commit final do código-fonte em produção.


B

Formalizar os testes executados, critérios, dados de entrada e resultados esperados.


C

Registrar o desempenho do sistema em ambientes com alto uso de CPU.


D

Definir as dependências externas e a carga suportada por cada instância.


E

Agendar os ciclos de deploy e versionamento com base no backlog da sprint.

Os testes de software são uma parte fundamental do desenvolvimento de sistemas, pois garantem que o produto atenda aos requisitos especificados, funcione corretamente e seja livre de defeitos. Eles desempenham um papel crucial na manutenção da qualidade, segurança e confiabilidade do software. Os testes de pré-lançamento são realizados antes de o software ser disponibilizado ao público, com o objetivo de assegurar sua qualidade e funcionalidade. Considerando essas informações, analise as assertivas a seguir, sobre alguns testes de pré-lançamento, julgando-as V, se verdadeiras, ou F, se falsas.


( ) O teste alfa é o último estágio de testes de pré-lançamento, realizado externamente para um grupo selecionado de usuários externos (alfa testers) que testam o software em um ambiente real.

( ) O teste beta é o segundo estágio de testes de pré-lançamento, realizado internamente pela equipe de desenvolvimento e algumas partes interessadas.

( ) O teste gama é o primeiro estágio de testes de pré-lançamento, antes do teste beta, com foco na identificação de problemas não críticos.


Qual alternativa preenche, CORRETAMENTE, os parênteses, na ordem em que aparecem?


A

F - F - F.


B

V - V - F.


C

V - F - V.


D

F - V - F.


E

V - V - V.

Julgue os itens a seguir, a respeito de testes de software.


I A herança torna mais simples os testes de classes, pois os testes das operações herdadas contemplam os testes em todos os contextos de uso.

II O teste de release deve ser realizado por uma equipe que não esteve envolvida no desenvolvimento do sistema.

III Os testes de estresse ajudam a identificar o ponto de degradação de um sistema, permitindo implementar controles para evitar sobrecarga.


Assinale a opção correta.


A

Apenas o item I está certo.


B

Apenas o item II está certo.


C

Apenas os itens I e III estão certos.


D

Apenas os itens II e III estão certos.


E

Todos os itens estão certos.

O time de Tl de um Tribunal Regional do Trabalho que está desenvolvendo uma aplicação web configurou o Selenium WebDriver para realizar testes de funcionalidades no navegador Chrome. Durante os testes, identificaram que o script falha ao tentar interagir com o botão de "Enviar", apresentando o erro NoSuchElementException. O desenvolvedor analisou o código e percebeu que o botão é carregado dinamicamente após a conclusão de uma animação. Nesse contexto, a abordagem mais adequada que o time deve adotar para resolver o problema e garantir que o botão seja corretamente identificado e clicado nos testes é


A

configurar o WebDriver para ignorar exceções e continuar a execução.


B

atualizar o Selenium WebDriver e o Selenium IDE para as versões mais recentes.


C

implementar Implicit Wait no script para executar após o carregamento do botão.


D

aumentar o tempo de execução do script para garantir que o botão seja carregado.


E

utilizar Explicit Wait para aguardar a presença do botão na página antes de interagir.

Pressman e Maxim (2021) afirmam que em Engenharia de Software existem sete grandes categorias as quais apresentam desafios contínuos para os engenheiros de software, dentre elas, destacamos a categoria que faz uso da heurística para solucionar problemas complexos que não são passiveis de computação ou de análise direta, aplicações nesta área incluem: robótica, sistemas de tomadas de decisão, reconhecimento de padrões, provas de teoremas e jogos.


Assim, assinale a alternativa que corresponde corretamente ao nome da categoria de software destacada acima.


A

Aplicações Web/aplicativos móveis.


B

Software de Inteligência Artificial.


C

Software de sistemas.


D

Software de engenharia.


E

Software de linha de produtos.

O teste de software constitui parte integrante do ciclo de vida de desenvolvimento de software, visando ter certeza sobre funcionalidade, desempenho e experiência do usuário, sendo uma parte importante e imprescindível, pois ajudam a garantir a qualidade do código. Entre os tipos de testes, enquanto um tem por objetivo validar os diferentes módulos juntos como um todo e identificar os bugs e problemas relacionados a eles, outro se concentra em testar partes/unidades individuais de um aplicativo de software no início do ciclo de vida, sendo que qualquer função, procedimento, método ou módulo pode ser uma unidade a ser submetida a esse tipo de teste para determinar sua correção e o comportamento esperado.


Os dois tipos de testes descritos são conhecidos, respectivamente, como testes:


A

De integração e funcional.


B

De desempenho e funcional.


C

De desempenho e unitário.


D

De integração e unitário.

 
Ir para a página:
OK
 
Gerar simulado