

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
Relacione as duas colunas quanto aos significados dos seguintes testes de softwares:
(1) Teste de Unidade | (A) Têm por objetivo unir os diversos módulos do sistema e testá-los em conjunto |
(2) Teste de Integração | (B) Teste em um nível de componente ou classe. É o teste cujo objetivo é um “pedaço do código”. |
(3) Teste de Caixa-preta | (C) Avalia o comportamento externo do componente de software, sem se considerar o comportamento interno do mesmo. |
Assinale a alternativa que indique a relação correta das colunas.
1A - 2B - 3C
1B - 2C - 3A
1B - 2A - 3C
1C - 2A - 3B
1A - 2C - 3B
Acerca dos testes ágeis, assinale a opção que corresponde à metodologia caracterizada por sua adaptabilidade às mudanças de cada iteração, e na qual nem sempre é fornecida documentação detalhada sobre como o aplicativo é testado.
desenvolvimento orientado a comportamentos (BDD)
desenvolvimento orientado a testes de aceitação (ATDD)
teste exploratório
teste baseado em sessão
No contexto de diferentes técnicas de teste de caixa preta (black-box) e caixa branca (white-box), assinale a alternativa correta.
A análise de valor limite é uma técnica caixa branca que foca em testar valores de entrada e saída, acima e abaixo dos limites dos parâmetros de entrada possíveis.
A cobertura de decisão é uma técnica caixa branca que foca em escrever casos de teste nos quais se evitam que determinadas ramificações do código sejam executadas, visando reduzir a cobertura para otimizar o tempo de teste.
A cobertura de condição é uma técnica caixa preta que foca em verificar se cada condição na decisão é executada pelo menos uma vez.
Um teste de partição de equivalência é uma técnica caixa preta em que se consegue escolher conjuntos de entradas que possibilitam reduzir o número de casos de testes que precisam ser desenvolvidos para atingir algum objetivo.
A suposição de erros é uma técnica caixa branca que consiste em um processo sistemático para especulação de prováveis tipos de erros, culminando com a escrita de casos de teste para expor estes erros.
O teste de integração descendente da modalidade primeiro em largura (breadth-first) move-se pela hierarquia de controle e integra todos os componentes em um caminho selecionado como principal.
Quanto aos tipos de testes de software, assinale a alternativa incorreta.
Teste unitário ou de unidade é onde unidades de programa individuais ou classes de objeto são testadas. O foco é testar a funcionalidade de objetos ou métodos.
Teste de componente é onde várias unidades individuais são integradas para criar componentes compostos. O foco é testar as interfaces de componentes.
Teste de sistema é onde alguns ou todos os componentes de um sistema são integrados e o sistema é testado como um todo. O foco é testar as interações dos componentes.
Teste de regressão é onde o sistema é restaurado para uma versão anterior. O teste se preocupa em reproduzir comportamento de algum bug reportado através de controle de mudanças, para posterior correção.
Testes de performance é onde se testa um requisito não funcional. O teste se preocupa em demonstrar que o sistema atende aos requisitos e em descobrir problemas e defeitos no sistema.


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
A respeito do conceito de pirâmide de automação de testes, assinale a alternativa correta.
O teste unitário deve ser a base de uma estratégia de automação de testes sólida e, como tal, representa a maior parte da pirâmide. O teste de nível de serviço fica no meio da pirâmide, e foca em como testar os serviços de uma aplicação separadamente de sua interface de usuário. O teste automatizado de interface do usuário é colocado no topo da pirâmide de automação de teste, porque se pretende realizar menos testes deste tipo.
O teste unitário é o mais importante na estratégia de automação de testes, ficando no topo da pirâmide. O teste automatizado de interface de usuário fica posicionado no meio da pirâmide, pois ele está em um nível intermediário de importância para a estratégia de testes. O teste manual está na base da pirâmide, por corresponder a maior parte dos testes, já que nem tudo é possível de se automatizar.
O teste unitário é o nível de base da pirâmide, pois é o tipo de teste mais básico que se pode fazer, estando em nível de componente. O teste automatizado de interface de usuário fica no meio da pirâmide, pois as quantidades de teste são inferiores à quantidade de testes unitários. O teste manual está no topo da pirâmide, por ser o tipo de teste que qualquer usuário do sistema potencialmente pode fazer, ele é o nível mais alto de testes.
O teste de serviço é base da pirâmide de automação de testes, dado que ele é resultante da análise combinatorial de diversos testes unitários para compor possíveis serviços. O teste unitário fica no meio da pirâmide, sendo útil para proporcionar um conjunto de funcionalidades que podem ser utilizadas, tanto pela base quanto pelo topo da pirâmide. O teste automatizado de interface de usuário fica no topo da pirâmide, permitindo testar indiretamente a camada do meio, já que utiliza testes unitários como base.
O teste unitário constitui a base da pirâmide, por ser o tipo de teste mais elementar e em maior quantidade nesta estratégia. O teste automatizado de interface de usuário está posicionado no meio da pirâmide, devido a uma quantidade menor de testes deste tipo. O nível mais alto da pirâmide é o de testes de integração, que integram funcionalidade de interface de usuário com testes unitário, possibilitando ver o funcionamento do sistema como um todo, mas em quantidade menor que os outros.
Em relação aos tipos de testes de software, julgue os itens a seguir, marcando com (V) a assertiva verdadeira e com (F) a assertiva falsa.
( ) Teste de Regressão significa executar novamente um subconjunto de testes já realizado anteriormente, para garantir que as últimas modificações não propagarão efeitos colaterais indesejáveis no software.
( ) Testes Alfa são realizados no ambiente de produção do usuário final para identificar possíveis problemas nesse ambiente que não foram detectados nas fases anteriores de teste.
( ) O Teste de Estresse executa um sistema de tal forma que ele demande recursos em quantidade, volume ou frequência anormais, com o objetivo de identificar limites de capacidade.
( ) O Teste de Unidade avalia a lógica interna de processamento e as estruturas de dados dentro dos limites de um componente.
A sequência CORRETA, de cima para baixo, é:
F, F, V, V.
F, V, F, V.
V, F, V, V.
V, V, F, F.
Qual é o tipo de testes em que o testador está preocupado com a funcionalidade e não com a implementação?
Teste unitário.
Teste de release.
Teste disfuncional.
Teste de integração.
Teste de caixa cinza.
Qual é o objetivo da realização de testes funcionais?
Visualizar o sistema como caixa branca.
Convencer de que o sistema é bom o suficiente para uso.
Justificar as possíveis falhas.
Identificar valor em funcionalidades não previstas.
Permitir validação feita pelo cliente após a entrega final das funcionalidades.
O gestor de um órgão organizador de concursos públicos pretende oferecer condições para que mais de um milhão de candidatos inscritos em determinado evento possa obter o gabarito das provas a partir do acesso ao seu sistema eletrônico.
Nessa situação, para verificar se o sistema eletrônico suportará uma quantidade grande de acessos simultâneos, a equipe de TI do órgão, ao preparar o ambiente de acesso eletrônico, deverá realizar o teste


Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
Como se chama o processo que testa individualmente os componentes de programa, como métodos ou classes de objetos?
Teste de sistema.
Desenvolvimento dirigido a testes (TDD).
Teste de release.
Teste unitário.
Teste de aceitação.
Sobre teste de unidade, considere as afirmações abaixo.
I - Sempre que possível, deve-se automatizar os testes de unidade. No entanto, se deseja-se realizar testes manuais, pode-se usar um framework de teste (como JUnit) para escrever e executar testes do programa.
II - Um teste automatizado tem três partes. Há uma parte de configuração, em que se inicia o sistema com o caso de teste, ou seja, as entradas e saídas esperadas; há uma parte de chamada, em que se chama o objeto ou método a ser testado; há uma parte de afirmaçã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, houve falha no teste.
III - É muito importante a escolha de casos de teste efetivos. Deve-se, portanto, escrever dois tipos de casos de teste. O primeiro deve refletir o funcionamento normal de um programa e deve mostrar que o componente funciona. Por exemplo, se está sendo testado um componente que cria e inicia um novo registro de paciente, o caso de teste deve mostrar que o registro existe no banco de dados e que os campos foram criados como especificados. Outro tipo de caso de teste deve ser baseado em testes de experiência, nos quais surgem os problemas mais comuns. Devem-se usar entradas anormais para verificar que essas sejam devidamente processados e que não façam o componente falhar.
Quais estão corretas?
Apenas I.
Apenas II.
Apenas I e III.
Apenas II e III.
I, II e III.
Para garantia da qualidade de software, a atividade de testes é necessária para mostrar que um programa faz o que é proposto fazer e para descobrir defeitos indesejáveis no programa antes de seu uso. Um sistema pode passar por três estágios de teste: testes em desenvolvimento, testes de release (ou funcional) e testes de usuário. Com relação aos testes em desenvolvimento, os testes unitários visam testar os componentes de programa tais como métodos ou classes de objetos. Uma estratégia para escolher casos de testes unitários é o teste de partição, sobre a qual é correto afirmar:
O teste de partição permite subdividir as funcionalidades do software em unidades menores, permitindo dessa foram criar casos de testes para cada método de uma classe de objetos.
O teste de partição identifica grupos de dados de entrada e saída com características comuns, para os quais o comportamento esperado do software é igual para todos os membros desse grupo, permitindo dessa forma reduzir o número de casos de teste.
O teste de partição é uma abordagem em que são criados cenários típicos de uso do software, ou estórias, a partir dos quais os testes são realizados, validando os requisitos do sistema.
O teste de partição consiste em definir diretrizes que refletem a experiência pregressa dos tipos de erros que os desenvolvedores cometem frequentemente no desenvolvimento dos componentes, possibilitando a criação de casos de testes semelhantes.
Relacione os estágios descritos por Ian Sommerville no processo de validação de software com suas respectivas finalidades:
1. Teste de Unidade
2. Teste de Módulo
3. Teste de Subsistemas
4. Teste de Sistemas
5. Teste de Aceitação
6. Teste Final
( ) Testa se o sistema cumpre seus requisitos funcionais e não funcionais.
( ) Testa conjuntos de módulos que foram integrados em subsistemas
( ) Testa componentes individualmente.
( ) Testa módulos individualmente.
( ) Testa o sistema com os dados fornecidos pelo cliente.
A sequência correta é
1, 4, 3, 6, 5.
4, 3, 1, 2, 5.
3, 4, 2, 1, 6.
2, 1, 5, 4, 3.
5, 2, 4, 3, 6.


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
Na fase de Elaboração do processo unificado de desenvolvimento de sistemas é criado e apresentado como resultado da fase, dentre outros, o artefato
modelo de caso de negócio.
software integrado na plataforma de hardware.
plano de desenvolvimento do software.
protótipo de arquitetura executável.
manual de usuário.