- ID
- 5011
- Banca
- CESGRANRIO
- Órgão
- TCE-RO
- Ano
- 2007
- Provas
- Disciplina
- Engenharia de Software
- Assuntos
O teste alfa (alpha test) é conduzido pelo:
O teste alfa (alpha test) é conduzido pelo:
Devido ao aumento da demanda por aplicações que funcionem 24 horas por dia na Internet, um software deve ser capaz de manter-se em operação após uma determinada falha. A estratégia de teste que melhor garante essa característica é o(a):
Uma estratégia de teste de software integra métodos de projeto de casos de teste em uma série bem planejada de passos, que resultam na construção bem sucedida de um software. O objetivo principal do projeto de casos de teste é originar um conjunto de testes que tenha a maior probabilidade de detectar erros no software. Sobre as estratégias e técnicas de teste de software, assinale a afirmativa correta.
Analise as seguintes afirmações relacionadas a Teste de Software:
I. Um critério de cobertura de teste é uma regra sobre como selecionar testes e quando parar o processo de testes.
II. No critério de teste denominado "teste de todos os ramos" o objetivo é passar por ambos os caminhos em todas as decisões. No teste de subdomínio a idéia é particionar o domínio de entrada em subdomínios mutuamente exclusivos, requerendo um número igual de casos de teste de cada subdomínio. A idéia de subdividir subdomínios é eficaz quando se deseja isolar erros potenciais dentro dos subdomínios individuais.
III. No teste funcional, o critério de "cobertura de todo o comando" especifica que todo comando do código fonte deve ser executado por algum caso de teste.
IV. A seleção dos casos de teste baseada na especificação é denominada teste estrutural.
Indique a opção que contenha todas as afirmações verdadeiras.
No âmbito de estratégias e técnicas de testes de software, assinale a afirmativa correta.
No contexto de engenharia de software, testes de software podem ser decompostos numa série de passos que devem ser executados seqüencialmente. Considerando a arquitetura de software convencional, o primeiro passo deve ser o teste de
Uma das métricas de teste mais utilizadas no mercado é a Análise de Ponto de Teste (TPA - Test Point Analysis). Sobre a TPA é FALSO afirmar que:
Um importante aspecto da elaboração de casos de testes para um sistema em desenvolvimento é a escolha dos valores de entrada e das saídas previstas dos casos de teste. Escolhas baseadas apenas em valores típicos, em geral, são incapazes de revelar todas as falhas da implementação. É necessário identificar conjuntos de valores que possuam características comuns, do ponto de vista das funcionalidades a serem testadas, como, por exemplo, "números negativos", "números com mais dígitos do que o previsto", "strings sem brancos", "arrays de um só elemento", além de prever casos de teste cobrindo a totalidade destes conjuntos, e projetar, para cada conjunto, casos de teste com valores nos limites e próximos ao ponto médio do conjunto. Esses conjuntos são denominados
Em engenharia de software, o processo de
desenvolvimento de software designa uma sequência de
atividades, agrupadas em fases e tarefas, executadas de forma
sistemática e uniformizada, realizadas por pessoas com
responsabilidades bem definidas e que, a partir de um conjunto
de entradas (inputs) produzem um conjunto de saídas (outputs).
Como objetivos, o processo de desenvolvimento de software deve
prover orientação sobre as sequências das atividades envolvidas,
especificar os modelos descritivos do sistema, gerenciar as tarefas
e definir métricas para os modelos e atividades.
R. A. Ramos. Treinamento em UML (com adaptações).
Quanto às fases e tarefas no processo de desenvolvimento de
software, julgue os itens de 64 a 67.
Requisitos descrevem um acordo ou contrato entre duas partes, especificando, entre outros aspectos, o que o sistema de software deve fazer para ser aprovado em um teste de aceitação.
O processo de teste repetido continuamente até que o cliente e o projetista concordem que a versão liberada seja uma implementação aceitável dos requisitos do sistema desenvolvido sob encomenda de um único cliente é chamado teste de aceitação ou teste
NÃO se trata de uma técnica para testar software o teste de
Durante um treinamento para as equipes de desenvolvimento e de testes, um analista transmitiu as orientações a seguir.
I - Para isolar a causa de um erro de software, os desenvolvedores deveriam utilizar a estratégia de depuração força bruta por ser o método mais eficiente, e, para grandes programas, utilizar a abordagem de rastreamento.
II - Para os testes de integração em sistemas orientados a objetos, poderiam ser utilizadas as estratégias de teste com base no caminho de execução e no uso.
III - Em sistemas orientados a objetos, o teste de sensibilidade poderia ser utilizado para tentar descobrir combinações de dados, dentro das classes de entrada válidas, que poderiam causar instabilidade ou processamento inadequado do sistema.
Constitui(em) prática(s) adequada(s) de estratégias de testes de software a(s) orientação(ões)
Em determinado formulário de um sistema WEB, é apresentado um campo de entrada que deve aceitar números inteiros de 10 a 500. De acordo com a análise de valor limite, que valores devem ser testados?
Uma sistemática para construção da arquitetura do software enquanto, ao mesmo tempo, conduz ao descobrimento de erros associados às interfaces é a estratégia de teste de software denominada de
NÃO se trata de uma categoria de erros encontrados por meio de teste caixa-preta:
Existem várias maneiras de se depurar (debug) programas. Algumas delas envolvem conhecimento, prática e bom senso do programador. Acerca de pontos que são importantes para depurar programas, julgue os itens a seguir.
I É possível encontrar falhas nos programas por meio da reprodução do erro em testes.
II Quanto maior a entrada de dados nos testes, mais simples é encontrar o problema e mais fácil é encontrar a solução da falha.
III Em um programa modular, o processo de encontrar falhas requer uma menor variação de informações de entrada, de modo que o programador possa encontrar o módulo com erros.
IV A passagem de parâmetros para variáveis auxiliares evita o uso de break points.
V A análise estruturada é a melhor maneira de encontrar erros em programação orientada a objetos.
Estão certos apenas os itens
No contexto da estratégia para o teste de um projeto, os estágios de teste desempenham um papel importante. O teste que é aplicado a componentes do modelo de implementação para verificar se os fluxos de controle e de dados estão cobertos e funcionam conforme o esperado, é o teste
Sobre os processos de teste de software, considere:
I. Em um processo de desenvolvimento iterativo, o teste de sistema concentra-se no teste de um incremento que será entregue ao cliente.
II. No teste de integração é feito o planejamento de uma série de testes em que a carga é constantemente aumentada até que o desempenho do sistema torne-se aceitável.
III. A única meta do teste de software é descobrir falhas ou defeitos no software que apresenta comportamento incorreto, não desejável ou em não conformidade com sua especificação.
Está correto o que consta em
Embora o processo de desenvolvimento de sistemas não esteja previsto na UML, podem-se eleger, em termos genéricos, cinco etapas em que a UML pode ser aplicada: análise de requisitos, análise sistêmica, projeto, implementação, testes/implantação. A etapa de testes/implantação deve abordar os testes de
I. unidade, onde cada programa, individualmente, é testado.
II. conjunto, pois nada garante que, apesar de terem funcionado individualmente, eles se comportarão da maneira esperada, quando executados em conjunto.
III. integração, quando o software criado tiver algum mecanismo de interface com outros sistemas.
IV. adequação aos requisitos, com o envolvimento direto do usuário, que dará a aprovação final.
Está correto o que se afirma em
Quanto aos princípios básicos da Engenharia de Software, é correto afi rmar que
Com relação aos tipos de testes que podem ser considerados e executados em um projeto de software, é correto afi rmar que o objetivo principal do Teste Funcional é assegurar que
Os testes de integração têm por objetivo verificar se
A execução de um sistema com o objetivo de encontrar falhas sob condições que demandam recursos em quantidade, frequência ou volume anormais é definida como
Com relação a técnicas e estratégias de validação para desenvolvimento de sistemas, assinale a opção correta.
Considere as seguintes assertivas sobre o teste de sistema:
I. Teste de mutação é um critério de teste da técnica baseada em defeitos.
II. O tempo médio para falhas (MTTF) pode ser utilizado para medir a confiabilidade do sistema; quanto mais próximo do zero o MTTF, maior a confiabilidade do sistema.
III. No teste funcional não são considerados os aspectos de implementação do software e por isso a técnica é também chamada de caixa-preta.
As assertivas corretas são:
Com referência a testes de software, assinale a opção correta.
O processo de verificação e validação de um software é realizado através de um conjunto de atividades. É correto afirmar que:
Normalmente, são descobertos defeitos durante o processo de verificação e validação de um software, e os artefatos onde eles estão localizados devem ser modificados para sua correção. Não é correto afirmar que:
Considere as seguintes afirmações:
(1) Programas de computador são obras de engenharia que devem seguir, rigidamente, normas e padrões técnicos.
(2) Uma falha de software pode comprometer a integridade, disponibilidade e confidencialidade de um sistema de informações empresarial.
(3) Os testes de caixa preta são utilizados para demonstrar que as funções do software estão operacionais, que as entradas válidas são adequadamente aceitas e produzem saídas corretas, mantendo a integridade das informações externas.
É correto afirmar que:
Com relação à qualidade de software, é incorreto afirmar que:
O teste do software tem a finalidade de fornecer informações acerca da qualidade do software em relação ao contexto em que ele deve operar. Os testes de software incluem a técnica denominada
I caixa preta.
II caixa branca.
III caixa cinza.
IV teste de integração.
V teste de sistema.
A quantidade de itens certos é igual a
Acerca das relações estabelecidas entre os modelos de ciclo de
vida de software, os modelos de gestão e seus exemplos, julgue
os itens de 62 a 71.
A rotina diária dos desenvolvedores, ao empregar processos baseados no TDD (Test Driven Development), é concentrada na elaboração de testes de homologação.
Garantir que um ou mais componentes de um sistema combinados funcionam corretamente é o objetivo do tipo de teste
O teste de ameaça normalmente deve ser aplicado dentro de um projeto de software nas etapas de
Considere as informações abaixo em relação ao desenvolvimento de sistemas:
I. executar um software com o objetivo de revelar falhas, mas que não prova a exatidão do software.
II. correta construção do produto.
III. construção do produto certo.
Correspondem corretamente a I, II e III, respectivamente,
Há um tipo de teste que vislumbra a "destruição do programa" por meio de sua submissão a quantidades, frequências ou volumes anormais que é o teste
A respeito dos conceitos relacionados ao desenvolvimento de
sistemas e às metodologias de desenvolvimento de sistemas,
julgue os itens seguintes.
No modelo extreme programming, os testes de software só são realizados na etapa, final de desenvolvimento do software e, somente nessa etapa, os programadores trabalham, obrigatoriamente, em pares, utilizando cada um o próprio computador.
Sobre testes no Processo Unificado, é correto afirmar que um(a)
Também conhecido por teste estrutural ou orientado à lógica, é uma técnica de teste de software que trabalha diretamente sobre o código fonte do componente de software para avaliar aspectos, tais como, teste de condição, teste de fluxo de dados, teste de ciclos e teste de caminhos lógicos. Trata-se da técnica de teste
Julgue os itens a seguir, acerca da qualidade e da maturidade em
projetos de software.
A eficiência na remoção de defeitos (defect removal efficiency) é uma métrica específica da fase de testes de um projeto de software que permite avaliar tanto a capacidade de testar da equipe quanto os erros deixados no software durante as fases anteriores, inclusive a especificação, a análise e a codificação.
Julgue os itens a seguir, acerca da qualidade e da maturidade em
projetos de software.
Uma matriz de grafo de fluxo de um programa é uma ferramenta que permite a concepção de casos de teste considerando a importância relativa dos percursos possíveis na estrutura do software.
Com relação a engenharia de software, processos de software, análise de requisitos, estratégias de validação e ferramentas CASE, julgue os próximos itens.
Entre os tipos de testes de caixa preta, encontram-se o teste baseado em grafos; o particionamento de equivalência; a análise de valor-limite; e o teste de matriz ortogonal.
Um critério de teste de software baseado no fluxo de dados de aplicação pode ser utilizado como uma técnica de teste baseada
No referente a técnicas e estratégias de verificação e
validação, julgue os próximos itens.
Uma abordagem para o projeto de casos de teste consiste em identificar as partições de equivalência. Uma partição de equivalência de entrada contém conjuntos de dados que são processados de modo equivalente. No teste estrutural, que é outra estratégia para projetar casos de teste, se usa o conhecimento da estrutura do programa. O teste de caminho é um teste estrutural no qual se procura exercitar os caminhos percorridos ao se executar o programa.
Uma das principais atividades do processo de teste de um ciclo de vida de um projeto qualquer é
Testar é uma disciplina de suma importância para a engenharia de software. A literatura divide os tipos de testes em duas grandes categorias: teste de caixa preta e teste de caixa branca. Sobre esta classificação, pode-se afirmar que
I - testes de interfaces são classificados como de caixa branca;
II - testes de caixa preta são também chamados de teste comportamental, onde o foco são os requisitos funcionais do software;
III - testes de caixa preta são complementares aos testes de caixa branca, uma vez que contemplam diferentes classes de erros.
É correto o que se afirma em
O teste de software que projeta casos de testes derivados do conhecimento da estrutura e da implementação do software é conhecido por:
O teste de software que garante o atendimento aos requisitos, ou seja, que verifica se os requisitos estão corretamente codificados, são conhecidos como:
Analise a citação a seguir.
"Um conjunto de atributos que têm impacto na capacidade do software de manter o seu nível de desempenho dentro de condições estabelecidas por um dado período de tempo."
A Norma que integra os conceitos de ambiente, estratégias e planejamento de testes, é conhecida por:
Ferramentas de software, frequentemente utilizadas por Analistas de Qualidade e Testes, estão relacionadas a seguir, à exceção de uma. Assinale-a.
O teste de sistema que força o software a falhar de diversos modos e verifica o retorno do processamento dentro de um tempo pré-estabelecido é um tipo de teste de
A técnica de teste de software, também chamada de comportamental, é a técnica de
O coordenador da equipe de testes de uma fábrica de testes deseja implantar uma ferramenta de gestão de defeitos. Para tanto, ele precisa escolher entre três opções, que são:
Julgue os itens seguintes, a respeito de engenharia de requisitos.
O checklist de validação é uma forma útil de averiguar se determinado requisito pode ser testado e, em caso afirmativo, se os testes podem ser especificados.
Acerca do desenvolvimento de aplicações e da arquitetura OLAP,
julgue os itens a seguir.
O processo de validação tem por objetivo estabelecer com os clientes confiança quanto ao funcionamento adequado de um software. Enquanto inspeções de software ou revisões por pares são consideradas validação estática, o teste consiste em uma técnica dinâmica de validação de software. Os termos estático ou dinâmico são relativos à necessidade ou não do software ser executado.
Teste rápido é um mecanismo para identificar requisitos de software.
A validação é o processo para determinar se os produtos de software de uma atividade atendem completamente aos requisitos ou condições impostas a eles nas atividades anteriores, enquanto a verificação determina se os requisitos e o produto final, sistema ou produto de software construído atendem ao uso específico pretendido.
Na direção dos tipos de teste focados pela engenharia de software, os testes de integração cuidam dos tópicos associados com os problemas de verificação
Analise a definição abaixo.
Teste de software que procura descobrir erros por meio da reaplicação parcial dos testes a um programa modificado.
Assinale a alternativa que cita corretamente o conceito ao qual se refere a definição.
No processo de teste de software, uma das metas consiste em
demonstrar ao desenvolvedor e ao cliente que o software atende aos
requisitos, e outra, em descobrir falhas ou defeitos no software que
apresenta comportamento incorreto. Quanto aos processos de teste
de software, julgue o próximo item.
O teste de integração geralmente é um processo de teste de caixa-preta no qual os testes são derivados da especificação do sistema, cujo comportamento pode ser determinado por meio do estudo de suas entradas e saídas.
No processo de teste de software, uma das metas consiste em
demonstrar ao desenvolvedor e ao cliente que o software atende aos
requisitos, e outra, em descobrir falhas ou defeitos no software que
apresenta comportamento incorreto. Quanto aos processos de teste
de software, julgue o próximo item.
No desenvolvimento orientado a objetos embasados em componentes, os objetos e os componentes são definidos por suas interfaces e podem ser reusados em combinação com outros componentes em diferentes sistemas. Nesse caso, o teste de interfaces é particularmente útil, porque erros de interface em componentes compostos (formados pela combinação de componentes) não podem ser detectados por meio de testes de objetos ou componentes individuais.
Quanto ao teste de software, julgue os itens que se seguem.
Segundo o IEEE, defeito é um ato inconsistente cometido por um indivíduo ao tentar entender determinada informação, resolver um problema ou utilizar um método ou uma ferramenta; erro é o comportamento operacional do software diferente do esperado pelo usuário, e que pode ter sido causado por diversas falhas; e falha é uma manifestação concreta de um defeito em um artefato de software, ou seja, é qualquer estado intermediário incorreto ou resultado inesperado na execução de um programa.
Um novo sistema de informação interno de uma empresa está sendo testado por um grupo restrito de usuários, fora do ambiente dos desenvolvedores. Isso caracteriza o teste
Teste baseado em riscos é um tipo de teste de software que:
Sobre os objetivos de teste de software, considere as seguintes afirmativas:
1. A atividade de teste é o processo de executar um programa com a intenção de descobrir um erro.
2. A atividade de teste pode comprovar a ausência de erros.
3. Um bom caso de teste é aquele que tem uma elevada probabilidade de revelar um erro ainda não descoberto.
4. Um teste bem-sucedido é aquele que revela um erro não descoberto.
Assinale a alternativa correta.
Durante o processo de desenvolvimento de software, é necessário garantir que o software em desenvolvimento esteja satisfazendo os requisitos. Isto é realizado através de processos de teste do software. Selecione das seguintes alternativas, a CORRETA.
Julgue os itens a seguir, relativos a métodos de desenvolvimento de
software.
Para a verificação de resultados de um protótipo de sistema, podem-se utilizar testes back-to-back, nos quais os mesmos casos de teste são submetidos ao protótipo e ao sistema em teste a fim de se produzir um relatório de diferenças.
Com relação à engenharia de requisitos, julgue os itens a seguir.
Considerando-se o programa final como caixa preta, a validação dinâmica, ou teste, pode ser utilizada para identificar a ocorrência de defeitos no programa ou para confirmar se ele atende aos requisitos estabelecidos.
Com relação à engenharia de requisitos, julgue os itens a seguir.
Nos testes de caixa branca, o código-fonte do programa é usado para identificar testes de defeitos potenciais, particularmente no processo de validação, o qual demonstra se um programa atende a sua especificação.
Em termos de teste de sistemas, são técnicas utilizadas para verificar a operação correta do sistema em relação a casos inválidos ou inesperados de entrada. Trata-se de técnicas
Julgue os itens de 81 a 94, acerca de princípios, métodos, técnicas
e processos da engenharia de software e de bancos de dados.
Desenho orientado a modelagem de dados, testes de estresse e o estilo de arquitetura de software cliente-servidor são algumas das técnicas comumente empregadas em projetos de interfaces com o usuário.
O teste de componentes compostos concentra-se, princi- palmente, em verificar se
Considerando que a aplicação de testes em um programa possibilita
verificar se ele atende à sua especificação e se realiza o que o
cliente deseja, julgue os itens subsecutivos, relativos a testes de
software.
O teste de validação tem por finalidade encontrar defeitos e inconsistências no programa com relação a sua especificação.
Considerando que a aplicação de testes em um programa possibilita
verificar se ele atende à sua especificação e se realiza o que o
cliente deseja, julgue os itens subsecutivos, relativos a testes de
software.
Inspeções de programa correspondem a um teste de verificação amplamente utilizado, que deve ser realizado no momento em que o programa está sendo executado.
Considerando que a aplicação de testes em um programa possibilita
verificar se ele atende à sua especificação e se realiza o que o
cliente deseja, julgue os itens subsecutivos, relativos a testes de
software.
O teste de partições caracteriza-se por ser um projeto de caso de teste, em que o conhecimento da estrutura do programa é utilizado para projetar testes que verificam todas as partes desse programa.
Uma ferramenta de automação de teste
São axiomas em risco
Assinale a opção correta.
Teste de Equivalência de Classe é
Testes ajudam a descobrir erros ocorridos durante o projeto e a construção de software. As estratégias de teste devem ser planejadas de forma adequada, e ferramentas de teste podem ser utilizadas para tal fim. A esse respeito, julgue os itens subsequentes.
No plano de teste, um documento de nível gerencial, definem-se como o teste vai ser realizado, quem vai executar os testes, o prazo estimado e o nível de qualidade esperado.
Testes ajudam a descobrir erros ocorridos durante o projeto e a construção de software. As estratégias de teste devem ser planejadas de forma adequada, e ferramentas de teste podem ser utilizadas para tal fim. A esse respeito, julgue os itens subsequentes.
O resultado de um teste de verificação indica se o software desenvolvido corresponde aos requisitos especificados.
A função de um Testador de software pode ser assinalada nas seguintes alternativas, EXCETO:
Uma vez implementado o código de uma aplicação, o mesmo deve ser testado antes da entrega do produto de software ao seu cliente, a fim de que sejam detectados possíveis erros. Com relação a Teste de Aplicação, marque a alternativa INCORRETA:
O teste de integração constitui-se em identificar erros associados às interfaces entre os módulos quando esses são integrados para construir a estrutura do software que foi estabelecida na fase de projeto. Com relação a teste de integração, analise as seguintes afirmativas:
I. O teste de integração é o processo de verificar se os componentes do sistema, juntos, trabalham conforme descrito nas especificações do sistema e do projeto do programa.
II. O teste de integração é uma estratégia de integração que deve responder a três questões: quais componentes são focados pelos testes de integração; em que seqüência as interfaces de componentes deverão ser exercitadas e qual técnica de teste será empregada para exercitar a interface.
III. Um stub é a implementação parcial de um componente.
Podemos afirmar corretamente que:
Teste de unidade é toda a aplicação de teste nas assinaturas de entradas e saídas de um sistema. Consiste em certificar dados válidos e inválidos via I/O (entrada/saída) sendo aplicado por desenvolvedores ou analistas de teste. Com relação a teste de unidade, assinale a alternativa correta.
Teste de caixa-branca é uma técnica de teste que utiliza a perspectiva interna do sistema para modelar os casos de teste. Com relação ao Teste de caixa- branca, marque a alternativa correta.
Os testes de software são verificações realizadas com o objetivo de avaliar se o software atende às necessidades especificadas ou identificar as diferenças entre os resultados esperados e reais. Com relação aos tipos de testes de software assinale a alternativa correta.
Com referência a engenharia de software e uso de UML para a
modelagem de sistemas, julgue os itens subsecutivos.
O teste de caixa-preta é utilizado quando uma nova versão do software está sendo lançada ou quando um novo ciclo de testes for necessário em paralelo ao desenvolvimento do mesmo.
Com referência à engenharia de testes e qualidade com foco na identificação de inconsistências entre o propósito de ferramentas de software e as características dos software em desenvolvimento, assinale a opção correta.
Considerando uma organização na qual a abordagem de test driven development (TDD) esteja implementada, assinale a opção correta.
Com referência ao fortalecimento da capacidade de teste de software em uma organização produtora de software, assinale a opção correta acerca da aplicação de métodos e técnicas de teste de software.
Assinale a opção correta, com relação às formas adequadas de emprego de testes de software em uma organização.
Acerca de engenharia de software, que permite a criação, de maneira econômica e confiável, de software que trabalhe eficientemente em máquinas reais, julgue os próximos itens.
Em um teste de integração, é possível detectar possíveis falhas provenientes da integração interna dos componentes de um sistema. O teste de integração sucede o teste de unidade, no qual os módulos são testados individualmente, e antecede o teste de sistema, em que o sistema completo é testado.
Assinale a opção correta acerca da elaboração de estratégias de teste de software.
Assinale a alternativa que NÃO corresponde a um método de teste Caixa Branca.
Com relação ao processo, aos modelos e à medição da qualidade de software, bem como aos testes de software, assinale a alternativa correta.
No que diz respeito aos sistemas de software, teste é um conjunto de atividades que podem ser planejadas antecipadamente e conduzidas sistematicamente. Um tipo I de teste se refere ao conjunto de atividades que garante que o software implementa corretamente uma função específica, associado à construção do produto de forma correta ou não, enquanto um tipo II se refere a um conjunto de atividades diferente que garante que o software construído corresponde aos requisitos do cliente, associado à construção do produto certo. Esses testes do tipo I e II são denominados, respectivamente:
No que diz respeito aos sistemas de software, o objetivo do teste é encontrar erros, sendo um teste aquele que tem alta probabilidade de encontrar um erro. Assim, um engenheiro de software deve projetar e implementar um sistema ou um produto baseado em computador com “testabilidade” em mente. Ao mesmo tempo, os testes devem exibir um conjunto de características que atinge o objetivo de encontrar a maioria dos erros com um mínimo de esforço. Dentre as características que levam a um software testável, uma pode ser resumida pela frase “Quanto melhor funciona, mas eficientemente pode ser testado”. Se um sistema é projetado e implementado com qualidade em mente, poucos defeitos vão bloquear a execução dos testes, permitindo que o teste progrida sem problemas. Essa característica é definida como:
Um tipo de teste de sistemas de software é também chamado de “teste comportamental” e focaliza os requisitos funcionais do software, permitindo ao engenheiro de software derivar conjuntos de condições de entrada que vão exercitar plenamente todos os requisitos funcionais de um programa. Esse tipo de teste tende a ser aplicado durante os últimos estágios do teste e tenta encontrar erros em funções incorretas ou omitidas, de interfaces, de estrutura de dados ou de acesso à base de dados externa, de comportamento ou desempenho de iniciação e término. Além disso, é um tipo de teste que despreza, de propósito, a estrutura de controle, sendo a atenção focalizada no domínio da informação. Esse tipo é conhecido por teste:
Garantir o funcionamento correto do software para atender as expectativas do cliente é o objetivo da homologação de sistemas. Nessa fase, que precede à implantação, os testes mais comuns são os testes: