“Pensar dentro ou fora da caixa?”

Olá! Vamos falar de alguns termos hoje?

Você provavelmente já ouvi falar de caixa-branca e caixa-preta, certo? Bem capaz de ter ouvido até sobre a caixa cinza…

Em alguns lugares você vai achar explicações imensas sobre o conceito de cada uma, que mais vão te confundir do que te fazer entender… então vou explicar primeiramente de uma forma bem simples, direta e “tosca”:

Caixa-branca –  testa a estrutura (código) do software

Caixa-preta- testa sem saber nada sobre o código (ou ignorando o que se sabe)

Caixa-cinza –Um teste tendo um acesso limitado a estrutura do código.

Pronto, com esses conceitos acima bem fixados nós já podemos seguir em frente de uma forma mais detalhada, vamos pensar no programa como uma caixa, dentro dele nós temos o código da aplicação, e fora dele é a interface do usuário (IU):

Caixa-Branca – Vamos pensar que essa caixa é transparente, você consegue ver cada linha do código, cada pequeno detalhes, então utilizam-se métodos onde a maior quantidade possível de caminhos sejam testadas, uma vantagem é que é o tipo de teste que pode ser feito antes da IU estar pronta, normalmente esse teste é feito pelo desenvolvedor (ele já está com a “mão na massa” (no código na verdade), então ele vai efetuando esses testes durante a criação em diversos momentos, verificando se a cada módulo criado não alterou a funcionalidade do programa de uma forma inesperada.

Eu vou ficar devendo um exemplo mais claro desses testes, até procurei alguns na internet, mas todos que achei são muito complexos, não fazem muito sentido (até por que só conheço o básico do básico de programação né?)

Caixa-Preta – Agora vamos pensar que a nossa caixa é completamente preta, sem nenhuma abertura,a IU está lá para você… você  pode revirar a caixa inteira, mas não vai abrir ela, não vai conseguir ver as engrenagens lá dentro se mexendo. Primeira vantagem desse tipo de teste, você não precisa saber programar \o/, você vai utilizar o software como se fosse o usuário, criando situações válidas e inválidas (“minha senha vai ter que ser Alfanumérica? Não ligo, vou colocar só números e ver se funciona”), hoje em dia temos ferramentas quem também fazem isso, a ferramenta vai clicar nos caminhos indicados por você, jogar valores verdadeiros e falsos e depois te passar um relatório completo… mas nesse caso é preciso saber programar.

Esse é um tipo de teste que provavelmente você já fez de alguma forma, já tentou passar daquela página de formulário sem preencher todas as informações? Ou com informações falsas? Já fez um aplicativo de celular travar por clicar em tanta coisa que ele não aguentou?

Exato, são esses testes, mas como profissional da área de teste você tem que pegar esses detalhes antes que eles cheguem no usuário, você não vai sair clicando de forma aleatória (pelo menos não é o ideal), pois caso um erro ocorra você vai passar para o desenvolvedor como que o erro ocorreu (“Eu estava preenchendo o formulário X, coloquei informação Y, confirmei e apareceu o erro K”), e muito provavelmente você vai estar seguindo um plano de testes que vai cobrir maior parte das opções possíveis que devem ser verificadas.

Caixa-cinza – Pra finalizar, a nossa caixa é transparente, mas tem uma fumaça cinza dentro dela, que te deixar ver apenas algumas engrenagens lá dentro, você até tem uma ideia do que aquelas engrenagens vão fazer, mas em algum momento não vai conseguir ver até onde elas estão conectadas. Também vou ficar devendo exemplos muito claros, devido minha falta de experiência, mas seria algo assim, você está utilizando a IU, e pode fazer comparativos com uma tabela dentro do código para verificar se as informações estão batendo.

Bem pessoal, espero que as definições acima possam ajudar vocês. Fiquem a vontade para comentar, principalmente se

Ficou alguma dúvida

Localizou algum erro

Teria algum exemplo para acrescentar aos post

Obrigado, e até a próxima

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s