

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.
A abordagem para o desenvolvimento de programas no TDD intercala-se com testes e desenvolvimento de código; não se desenvolve o próximo incremento de software até que o código desenvolvido passe no teste, por isso o TDD é incompatível com testes automatizados.
Assinale a alternativa que apresenta o objetivo de um teste funcional.
Avaliar os aspectos de integridade do banco de dados.
Verificar requisitos de desempenho, como o número de terminais suportados.
Determinar os requisitos de guarda e retenção de dados.
Mapear os aspectos de instabilidade do sistema.
Verificar a consistência entre o produto implementado e respectivos requisitos.
No processo de teste de software, o beta teste é
realizado por uma equipe de teste independente.
realizado pelos clientes no local de trabalho do desenvolvedor de software.
realizado por clientes em seu próprio local de trabalho.
útil para testar software sob medida.
executado o mais cedo possível no ciclo de vida.
Qual das seguintes alternativas apresenta uma característica de um teste de caixa preta?
Ignora os mecanismos internos de um sistema e focaliza as saídas geradas em resposta às entradas e condições de execução selecionadas.
É um sinônimo de teste de caixa transparente.
Leva em consideração os mecanismos internos de um sistema componente. É semelhante a um teste estrutural.
Nesse tipo de teste, um exemplo de resultado é a quantidade de erros de acesso da aplicação ao banco de dados.
Um teste de caixa preta é utilizado para determinar se todas as bibliotecas necessárias para a execução do sistema como um todo estão disponíveis para a aplicação.
O teste de esforço é uma continuidade do teste de carga, e ambos são modalidades do teste de desempenho.
Dentre as proposições abaixo, assinale a alternativa correta.
O rastreamento de defeitos é considerado como algo à parte do processo de teste.
O relatório das falhas observadas é considerado uma entrada da atividade de planejamento de testes.
Durante os testes, os desenvolvedores que corrigem os defeitos descobertos precisam ser as mesmas pessoas que observaram e relataram os problemas em primeiro lugar.
O JUnit é um exemplo de ferramenta popular de rastreamento de defeitos.
A atividade de rastreamento de defeitos monitora e registra o que aconteceu com cada defeito após sua descoberta inicial, até a sua resolução final.
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.
A respeito de princípios básicos para elaboração de testes de software, assinale a alternativa correta.
A definição da saída ou resultado esperado é uma parte desnecessária em um caso de teste.
Testes de software são tarefas repetitivas, pouco criativas ou desafiadoras, pois são fáceis de automatizar quando pensadas no início do projeto.
Se muitos erros já foram encontrados em uma seção do programa, a probabilidade de encontrar mais erros ali será baixa.
Casos de teste devem ser escritos para condições de entrada inválidas e inesperadas, bem como para aquelas que são válidas e esperadas.
Ao se planejar um esforço de testes, faz-se a suposição tácita de que nenhum erro será encontrado.
Conforme a descrição do planejamento de testes e inspeções no PMBOK, analise as proposições abaixo.
1) O gerente do projeto e a equipe do projeto determinam como testar ou inspecionar o produto, a entrega ou o serviço, para satisfazer as necessidades e expectativas das partes interessadas.
2) O planejamento de testes e inspeções é usado para determinar e identificar uma abordagem para garantir que recursos suficientes estejam disponíveis para a conclusão bem-sucedida do projeto.
3) Os testes e inspeções variam conforme o setor e podem incluir, por exemplo, testes alfa e beta em projetos de software.
4) O gerente do projeto determina no planejamento de testes quais as funcionalidades que serão priorizadas com verificação estática ou dinâmica de código.
Estão corretas, apenas:
1 e 2.
1 e 3.
2 e 3.
3 e 4.
2 e 4.
Uma empresa foi contratada por um órgão governamental para modificar e adaptar um sistema para gerenciamento eletrônico de documentos, com base nas especificações criadas pelo próprio órgão. A contratada entregou ao órgão uma parte do sistema com as alterações solicitadas, e um grupo de usuários finais do sistema está simulando operações de rotina, para atestar se seu comportamento está de acordo com as expectativas da empresa.
Conclui-se que está sendo realizado o teste de:
unidade;
regressão;
integração;
aceitação;
cobertura.
O departamento de TI da Security10 está envolvido no desenvolvimento de uma aplicação Web, mas está com receio de lançá-la em produção sem antes efetuar alguns testes de segurança. Como João acabou de ser admitido para a vaga em segurança, coube a ele realizar essa tarefa. Seu chefe de equipe sabe que, para a realização deste tipo de teste, é comum a utilização de plataformas que incluem recursos como proxy, scanner de vulnerabilidades e rastreamento de mensagens e conteúdo e, portanto, disponibilizou o seu próprio computador para que João realize os testes.
A ferramenta adequada para a realização dos testes requisitados é
Com relação aos testes realizados no processo de desenvolvimento de software, julgue as afirmativas a seguir:
I. Diversas atividades de testes são executadas a fim de se validar o produto de software, testando cada funcionalidade de cada módulo, buscando, levando em consideração a especificação feita na fase de projeto.
II. Na fase de Testes de Integração as unidades do sistema são testados de forma combinada, o objetivo é detectar falhas na interação entre as unidades integradas.
III. Na fase de Testes de Verificação de Unidade serão testados apenas os módulos das funcionalidades requeridas pelo cliente durante o projeto, garantindo o pleno funcionamento. Deve ser feito, preferencialmente, pelo usuário final.
Está (estão) correta(s):
Apenas a afirmativa I.
Apenas a afirmativa II.
Apenas a afirmativa III.
Apenas as afirmativas I e II.
As afirmativas I, II e III.
No que se refere aos testes de software, analise os itens a seguir e, ao final, assinale a alternativa correta:
I – Um teste de aceitação foca em cada unidade do software, isto é, seu código-fonte.
II – Um teste bem-sucedido identifica defeitos.
III – Um teste “caixa preta” é um teste estrutural, em que partes específicas de componentes são testadas.
Apenas o item I é verdadeiro.
Apenas o item II é verdadeiro.
Apenas o item III é verdadeiro.
Apenas os itens I e III são verdadeiros.
Todos os itens são verdadeiros.
Considerando a realização de testes de caixa branca e preta de software, a equipe técnica deve considerar que o teste de caixa
preta não visa testar a estrutura lógica interna do módulo de software sob teste.
branca deve ser feito somente com o sistema completo, com todos os módulos integrados.
preta é um teste que exclui do programa o código testado.
preta deve ser executado no modo de segurança do compilador em uso.
branca visa testar apenas a interface de cada módulo de software.
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.
As ferramentas JUnit e Cucumber estão respectivamente associadas às seguintes técnicas de desenvolvimento de software:
Test-Driven Development e Behavior-Driven Development.
Domain-Driven Design e Extreme Programming.
Test-Driven Development e Extreme Programming.
Service-Oriented Computing e Component-based Development.
Continuous Integration e Pair Programming.
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.
Há dois tipos de testes de validação de software, conhecidos como testes alfa e beta, segundo os quais
o teste alfa é realizado nas instalações do desenvolvedor do software.
o teste beta é realizado nas instalações do desenvolvedor do software.
os testes alfa e beta são executados em um ambiente tercerizado.
no teste alfa, participam apenas os desenvolvedores do software.
no teste beta, participam apenas os desenvolvedores do software.
Dentre as técnicas de teste de software, pode-se estabelecer uma categorização entre testes de caixa preta e de caixa branca, sendo correto que a técnica de teste denominada
análise de valor limite é um método de teste de caixa branca.
matriz ortogonal é um método de teste de caixa branca.
teste de condição é um método de teste de caixa preta.
fluxo de dados é um método de teste de caixa preta.
particionamento de equivalência é um método de teste de caixa preta.
Os testes de software são realizados para verificar se um programa realmente faz o que é proposto a fazer e de forma correta, assim é possível descobrir os defeitos do programa antes dele ser utilizado pelo usuário final. Os testes são realizados utilizando dados fictícios em busca de erros e anomalias. Existem diversos tipos de testes. Assinale a alternativa que apresenta as características dos testes unitários de desenvolvimento de software.
Testes em que os potenciais usuários de um sistema testam o sistema em seu próprio ambiente.
Testes que são centrados nas interfaces dos componentes.
Testes que não têm como objetivo verificar a funcionalidade de objetos e métodos.
Testes que são centrados nas interações entre os componentes.
Testes em que as unidades individuais de programa ou classes de objetos são testadas individualmente.