Você está na página 1de 2

1. Quais suas principais características.

Explique sua forma de utilização:


Teste Exploratório: Utilizado para auxiliar no processo de garantia da qualidade de um
sistema, sendo realizado de maneira tática ou informal, para casos onde não existe muita
documentação do sistema. O testador não precisa ser um especialista no sistema, pois, na
maioria das vezes não há documentação, então, o testador precisa ter experiência em testes
para que o resultado seja satisfatório para a empresa. O teste é realizado totalmente de forma
manual.
Teste Funcional: Utilizado para certificar determinadas funcionalidades do sistema, avaliando
o seu devido funcionamento conforme especificado em sua documentação. O testador não
precisa ser um especialista em testes, basta utilizar o projeto para compreender cada um dos
requisitos e funcionalidades a serem testadas. Desde pequenas funcionalidades, até as
maiores e mais complexas de serem executadas. O teste é realizado totalmente de forma
manual.
Teste Unitário: Utilizado para testar partes isoladas de um sistema, em sua grande maioria,
métodos, classes, funcionalidades, módulos entre outros. Sua principal função é rastrear e
garantir o funcionamento de cada porção de código após implementado melhorias. Os testes
geralmente são feitos de forma automatizada, o testador precisa ter conhecimentos amplos de
programação para criar ou utilizar ferramentas prontas nos testes, reduz custos com testes
manuais, programadores podem trabalhar sem tanto medo de criar bus em rotinas funcionais.
Teste de Usabilidade: Utilizado para analisar e certificar a facilidade de uso do software, ele
deve coletar todos os pontos do produto que podem ser difíceis de se compreender ou ser
manipulado pelo usuário. Após, apresentar aos desenvolvedores as características positivas e
negativas em relação a usabilidade para que sejam ajustadas e trazer a melhor experiência de
uso possível. O testador não precisa do software completo para realizar suas análises, os
protótipos podem ser utilizados para avaliação antes mesmo de começar a construção do
sistema, o testador não precisa ter conhecimento técnico em desenvolvimento, mas precisa
ter uma experiência real do dia a dia do usuário.
Teste de Estresse: Utilizado para avaliar a performance do sistema quando é submetido a uma
alta de processamento, conexões de usuários, atingindo limites que estão fora do especificado,
verificando como a aplicação irá se comportar em condições extremas, onde existem poucos
recursos computacionais disponíveis, identificando se há indisponibilidade no servidor ou se
ocorre lentidão, prejudicando a experiência do usuário. Geralmente esses testes são
executados por softwares para este propósito, como os testes são baseados em desempenho
computacional, o usuário que irá testar precisa ter um conhecimento técnico na área.
Teste de Carga: O teste de carga muito similar ao teste de estresse, porém, ele visa verificar
como é o desempenho do ecossistema geral do sistema, submetendo-o a cargas variáveis de
usuário ou transações. Podendo iniciar com 100 usuários e ir incrementando este número a
cada x minutos até atingir um total de 1000 usuários simultâneos. No decorrer do processo é
verificado se houve lentidão, uso fora do comum de CPU e Memória dos servidores. Também é
executado por testadores que possuem conhecimentos computacionais para avaliar o
desempenho do servidor.
Teste de Segurança: Utilizado para garantir a integridade e segurança do sistema, mesmo
mediante as diversas tentativas ilegais de acesso, visando vulnerabilidades. Dessa forma,
buscando averiguar se os mecanismos de proteção estão protegendo a aplicação de acessos
indevidos. Requer um nível de conhecimento amplo em programação para identificar falhas
ou aplicar engenharia reversa em determinados componentes do sistema.
Teste Alpha: Utilizado para garantir que todas as funcionalidades estão sendo executadas de
maneira correta antes da entrega final do projeto. Geralmente os testes ocorrem em um
ambiente controlado, dentro das instalações das desenvolvedoras utilizando usuários finais
para que avaliem o funcionamento em um “cenário real” de uso. Os desenvolvedores ficam
presentes em toda a etapa de testes, registrando erros e eventuais problemas de uso. Os
testadores não necessitam de conhecimento técnico de testes ou de programação.
Teste Beta: Similar ao teste Alpha, porém, executado nas instalações do cliente final, para este
caso, o desenvolvedor não está presente acompanhando os testes. Portanto, todo o cenário e
estruturas utilizadas pelo cliente final não é controlada, sendo executado de fato em um
ambiente real para averiguar a aceitação do projeto, realizando uma série de testes para
certificar que tudo foi entregue conforme os requisitos solicitados e por fim receber a versão
oficial do software.

2. Qual tipo de teste se enquadra (caixa-preta, caixa-branca e caixa-cinza)?


Caixa Preta: Exploratório, Funcional, Usabilidade, Beta.
Caixa Branca: Unitário, Estresse, Carga.
Caixa Cinza: Segurança, Alpha.

3. Em qual fase do projeto a utilização da técnica é mais indicada?


Documentação: Usabilidade.
Desenvolvimento: Funcional, Exploratório.
Testes: Unitário, Estresse, Carga, Segurança, Alpha.
Implantação: Beta.

4. A técnica pode ser realizada de forma automatizada? Dê exemplos de


ferramentas que permitem elaborar e executar testes automatizados para
esta determinada técnica.
Um teste que pode ser feito de forma automatizada é o Teste Unitário, geralmente esse tipo
de teste é fácil de se construir e barato de se manter, sendo uma alternativa ideal para
empresas. Abaixo existem algumas ferramentas básicas para algumas linguagens de
programação: JUnit, Visual Studio Unit Testing Framework, Unit.js, PHPUnit, PyUnit entre
vários outros.

Você também pode gostar