Questões de Concurso
Sobre teste de software em engenharia de software
Foram encontradas 1.364 questões
I. Teste que refaz outros testes de um sistema ou componente para verificar se alguma modificação recente causou algum efeito indesejado, além de se certificar de que o sistema ainda atende aos requisitos. II. Teste focado em experiência do usuário, consistência da interface, layout, acesso às funcionalidades, etc. III. Teste para verificar se um ou mais componentes combinados funcionam de maneira satisfatória. IV. Teste da resistência do software a falhas (robustez).
A correta associação de definições e tipos de teste é
No que diz respeito a desenvolvimento e à manutenção de sistemas e aplicações, julgue o próximo item.
Uma ação importante no processo de desenvolvimento
de sistemas é realizar o teste do código, que é uma
maneira de encontrar inconsistências.
Durante a fase de teste de um software desenvolvido para um sistema em tempo real que usa memória compartilhada, um Analista de Sistemas verificou que, apesar de seus componentes já terem sido testados de modo individual e terem tido todos os erros corrigidos, ele não funcionava como deveria, de acordo com sua especificação. O Analista realizou, então, um teste de interface que conseguiu detectar o erro. O motivo era que o produtor e o consumidor de dados estavam operando em velocidades diferentes e o consumidor estava acessando informação desatualizada, pois o produtor da informação não atualizava as informações da interface compartilhada.
Na Engenharia de Software, o tipo de teste de interface e o erro detectado são denominados, correta e respectivamente, interface de
De acordo com o Sommerville na 9ª edição em inglês do seu livro Software Engineering, os passos do TDD são essencialmente os seguintes:
1. You start by identifying the increment of functionality that is required. This should normally be small and implementable in a few lines of code.
2. You write a test for this functionality and implement this as an automated test. This means that the test can be executed and will report whether or not it has passed or failed.
3. You then run the test, along with all other tests that have been implemented. Initially, you have not implemented the functionality so the new test will fail. This is deliberate as it shows that the test adds something to the test set.
4. You then implement the functionality and re-run the test. This may involve refactoring existing code to improve it and add new code to what’s already there.
5. Once all tests run successfully, you move on to implementing the next chunk of functionality.
Sobre eles, é INCORRETO afirmar que
Considere uma aplicação bancária na qual exista uma classe denominada ContaCorrente que tem os seguintes métodos:
abrir(),depositar(),retirar(),saldo(),limiteCredito(),cartoesAssociados(),fechar(),excluir()
Cada um destes métodos ou operações pode ser aplicado à ContaCorrente, mas há certas restrições implícitas como: a conta precisa ter sido aberta para que se possam realizar outras operações e precisa ser fechada após todas as operações terem sido realizadas. Se a conta for excluída nenhuma operação pode mais ser realizada. Mas as operações podem ser realizadas em diversas ordens e diversas vezes. Desta forma, o teste da classe deve assumir diversos cenários. Considere as sequências de casos de testes:
I. abrir→depositar→retirar→fechar
II. abrir→depositar→retirar→saldo→retirar→retirar→limiteCredito→fechar
III. abrir→saldo→retirar→depositar→retirar→depositar→cartoesAssociados→retirar→retirar→fechar
Os casos de testes