Questões de Concurso
Comentadas sobre teste de software em engenharia de software
Foram encontradas 1.353 questões
I. O sistema deve ser resistente a falhas, ou seja, falhas de processamento não devem causar a interrupção da sua função global. O teste deve forçar o software a falhar de diversos modos e verificar se a reabilitação é adequadamente realizada.
II. As informações armazenadas pelo sistema devem ser protegidas de todo o tipo de invasão e ataque. O teste deve tentar invadir o sistema e atacar suas vulnerabilidades de forma a verificar se os mecanismos de proteção são realmente capazes de protegê-lo.
III. O sistema deve ser capaz de suportar grande demanda por recursos. O teste deve submeter o sistema a situações extremas de demanda por recursos, frequência ou volume anormais.
Isabel indicou, de forma adequada e respectiva, os seguintes testes para as situações I, II e III:
I – Teste de software é a execução do software de maneira controlada para avaliar se ele se comporta ou não conforme o especificado. Visa a verificar e relatar o estado do software, a qualquer momento, em termos significativos a todos que precisam dessa informação.
II – O testador não pode “ter pena” do software. Ao contrário, quanto mais severamente o software for exercitado, menores as chances de ele falhar.
III – Se existem problemas no software, é melhor e mais rápido o cliente encontrá-lo do que a equipe de testes.

Considere as definições dos quadrantes de testes ágeis:
I. Testes que focam no negócio e criticam o produto: são os testes de aceitação feitos na homologação do produto ou de suas partes, testes betas e testes exploratórios. São testes feitos não com o objetivo de dizer que o software funciona, mas de encontrar defeitos. Bons analistas de testes possuem técnicas para encontrar defeitos que poucos desenvolvedores conhecem.
II. Testes que focam na arquitetura e suportam o time: são os testes unitários e de componentes. Estes são realizados e são de responsabilidade dos próprios desenvolvedores. O papel do analista de testes nesse quadrante é o de apoiar, suportar e expandir conhecimentos entre os desenvolvedores sempre que necessário. De preferência isso é feito em par com o desenvolvedor no momento de elaborar os testes unitários automatizados.
III. Testes que focam na arquitetura e criticam o produto: são os testes de performance, de carga e de segurança. Esses são de responsabilidade dos analistas de testes e costumam ser feitos quando partes da aplicação já estão prontas e, especialmente, antes da entrada de um release em produção.
IV. Testes que focam no negócio e suportam o time: são testes funcionais diferenciados, que idealmente utilizam a técnica de Behavior-Driven Development e Acceptance Test-Driven Development. Isto é, são testes e cenários de exemplo realizados pelos testadores em conjunto com os clientes, usuários e analistas de negócio. Com base nesses exemplos e cenários os desenvolvedores terão melhores condições de desenvolver e entender os requisitos.O foco desses testes não é encontrar o maior número de defeitos e sim ajudar clientes e desenvolvedores a se entenderem melhor.
A associação correta entre as definições I, II, III e IV e os quadrantes Q1, Q2, Q3 e Q4 é apresentada em
Pedro realizava testes
Assinale:
Com relação ao desenvolvimento orientado (dirigido) a testes (do Inglês Test Driven Development - TDD), analise as afirmativas a seguir.
I. TDD é uma técnica de desenvolvimento de software iterativa e incremental.
II. TDD implica escrever o código de teste antes do código de produção, um teste de cada vez, tendo certeza de que o teste falha antes de escrever o código que irá fazê-lo passar.
III. TDD é uma técnica específica do processo XP (Extreme Programming), portanto, só pode ser utilizada em modelos de processo ágeis de desenvolvimento de solftware.
Assinale.
No que se refere à engenharia de software, julgue o item a seguir.
Os testes de releases são realizados pela equipe de
desenvolvimento de sistema, sem participação do usuário final,
utilizando para tanto os códigos-fonte do sistema para testar e
acessar funcionalidades e reportar problemas.
No que se refere à engenharia de software, julgue o item a seguir.
O desenvolvimento de software direcionado a testes pode
contar com o uso de ferramentas automatizadas para criação de
testes, como, por exemplo, o JUnit, um framework para testes
em Java.
Acerca dos conceitos da engenharia reversa, julgue o item subsecutivo.
A depuração de programas utiliza métodos de teste e análise para tentar entender o software. Esses métodos são classificados como caixa-branca (white box) e caixa-preta (black box). Para se conhecer o código e seu comportamento, o teste caixa-branca é menos eficiente que o teste caixa-preta, embora seja mais fácil de ser implementado.
A correspondência da validação dos modelos por fases do processo de software, de acordo com esse modelo, está representada em
Essa fase é denominada teste de