Click here to edit title

Click here to edit subtitle

Blog

Está na história

Posted by JJ on December 14, 2015 at 5:00 PM Comments comments (0)

Acompanhando a evolução dos Testes, o site Aprendendo a Testar, traz a vocês um resumo sobre a história dos Testes de Software. 

Aos poucos a migração do Aprendendo Testar hospedado no Webs.com, vai para o domínio próprio da 4ALL Tests.




Migração:

Sobre - concluído

Guia - concluído

Exercícios - em andamento

Ciência - em andamento


E tudo o que mudou para o novo site, está sendo produzido. O intuito do aprendendo testar, é aquele: Entrou um funcionário novo para a equipe de Testes, você não tinha um local com informações suficientes e forma de passar o conhecimento. O Aprendendo Testar veio para isso. E muito mais, você treinador de testes, blogueiro ou empresa que gostaria de um local para servir de base, o Aprendendo Testar está ai.


Com metas de melhoria as criações dos módulos de conhecimento estão a todo vapor, e sempre haverão complementos, bem como melhorias e correções de erros:


Criação:

Comunidades: Pronto 

História: Pronto

Ferramentas:  em andamento

Automação: em breve novidades

Gestão: em andamento.



História: 

 

Reza a lenda...

 

Em meados de 1979, nascia os Testes de Software, Glenford Myers publicava seu primeiro livro: A arte de Testar Software ou A Arte dos Testes de Software.... continue lendo.


O Mundo dos Testes de Software

Posted by JJ on December 11, 2014 at 9:15 AM Comments comments (2)

O mundo dos testes vai muito além do simples "Testa aí".


Quando escuto um "Testa aí", tenho aquela sensação que é descrita por aqueles que estão(ou estiveram) à beira da morte:
"Ver toda a sua vida diante dos seus olhos".


Ou seja: Quando escuto um "Testa aí" vejo todo o mundo de Testes passar diante dos olhos e descubro que não é tão simples quanto a frase de 2 palavras a diz.




Por isso, há algum tempo venho trabalhando no projeto do "Aprendendo Testar" e moldando um "livro"(o qual no grupo de testes já foi comentado até para fazermos um Wiki- Oliveira, o Gabriel; entre outras idéias)[lançamento 2015].

Neste livro, venho escrevendo várias coisas da BASE do que seria para mim(e agora para o grupo, pois abri ao grupo para escreverem e me ajudarem), uma Base de Testes de Software. Aquele caminho que seria mesmo utilizado e visto em qualquer lugar que você vá trabalhar.

Desde aquela euquipe em uma startup, até aquela euquipe em uma empresa já sólida porém que não tem um, como posso colocar, um Fluxo Conceito de Testes.  Desde aquela empresa que tenha uma equipe com 2, 3, 5 testers, até aquela que tem 100 testers.

 

O certo é que toda empresa tem seu próprio processo de desenvolvimento de software(utilizando como base metodologias, ou até criando a sua), e o software precisa ter qualidade, para alcançar a qualidade, existem várias coisas a serem feitas e ferramentas que podem auxiliar, os Testes, seriam na minha visão, uma "ferramenta" para se obter mais qualidade em um software. 

Para explicar este livro, desenvolvi a palestra que mostra como o mundo de testes de software em sua base, não é somente um Testa aí, ela foi apresentada no Tech Day(Evento da Softplan, para seus colaboradores), que contou com mais outras 3 palestras e cerca de 120 participantes em sua maioria de Testadores. 



Slides da Palestra abaixo:


Abaixo segue o Mind Map deste mundo, este mind map, é a base do Livro, e está aberto à você que queira participar da construção deste livro, pegar um dos temas e suas ramificações e escrever seus conceitos. 


O livro será Gratuito E-Book, e talvez quem o quiser em meios fisicos, apenas custear sua impressão no formato correto.


O livro O Mundo dos Testes será volumado de 2 em 2 anos, com o primeiro volume sendo lançado em 2015.


Se interessou? Entre em contato.

Ciência do Teste de Software

Posted by JJ on December 8, 2014 at 10:10 AM Comments comments (0)
Mais uma fase de evolução natural do Portal Aprendendo a Testar.



A página Ciência, mostrará referências bibliograficas para estudo, pesquisa, trabalhos, modelos e processos para o Mundo dos Testes de Software.

 

Iniciei esta seção querendo chama-la de Literatura, porém, como em tudo o que tento passar busco fontes e pesquiso sobre aquilo.

 

"A Literatura é a arte de compor e expor escritos artísticos, em prosa ou em verso, de acordo com princípios teóricos e práticos, o exercício dessa arte ou da eloquência e poesia."

 

Conjunto de obras literárias: 1 bibliografia.
Conjunto de escritores: 2 autores, escritores, poetas.
Saber e erudição: 3 ciência, erudição, instrução, letradura, letras, saber.

 

Então após fazer algumas pesquisas e estudar um pouco, dei o nome de: Ciência.


"Em sentido estrito, ciência refere-se ao sistema de adquirir conhecimento baseado no método científico bem como ao corpo organizado de conhecimento conseguido através de tais pesquisasRef."


Qual o Objetivo desta sessão? 


Um lugar que possamos consultar e ver vários tipos de livros, monografias, artigos cientificos, colunas de revistas e tudo mais sobre Testes de Software.

Quem tiver, ou conhecer alguém que tem, basta enviar este link e pedir para pessoa preencher.

 


Então, é isso, espero que seja util para quem precise.

Tecnicas de Levantamento de Casos de Testes

Posted by JJ on April 3, 2013 at 2:45 PM Comments comments (5)

"Este artigo é direcionado à pessoas que conheçam os processos de testes bem como;

- técnicas: Estresse, Execução, Contingência, Operação, Conformidade, Segurança.

- fatores de qualidade: Correção, Confiabilidade, Eficiência, Integridade, Usabilidade, Manutenibilidade, Testabilidade, Testabilidade, Flexibilidade, Reusabilidade, Interoperabilidade e Portabilidade."



Este artigo te ajudará passar ileso dos feedbacks negativos em finais de projetos.

 

Há quem diga e defenda constantemente que os objetivos dos Testes são encontrar o maior número de falhas possíveis no sistema. Eu defendo o conceito de que o Objetivo do Teste de Software é garantir que ele funciona conforme requisitado. Encontrar falhas são meras consequências.

 

 


Encontrando Bugs

 


Seja amigo do bug

Para isto, vem outro conceito que defendo cegamente, o processo de Teste de Software deve começar la no inicio, com a documentação e o levantamento dos requisitos. Não simplesmente entregar um conjunto e emaranhados de telas e códigos e falar pro testador("Testa ai"). Não, não aceitem isto.

 

Para se testar um sistema, precisa conhecer a regra do negócio, saber o que o sistema fará. Conhecer quem utilizará o sistema, o que este faz diariamente, como ele utilizará e para qual fim.


Assim você poderá realmente iniciar a garantia de que o software foi construído de forma eficaz. Assim você terá testes limpos e eficiente. Do contrario, temos meros chutes e caça aos bugs.

 

Então para testarmos um sistema de forma eficiente, e não apenas chutar o que o usuário talvez fará. Vamos criar idéias de Testes, Criar Casos de Testes, este processo se chama:

- Levantamento de Casos(Idéias) de Testes

 

O processo de Levantamento de Idéias e Casos de Testes auxiliará o próximo processo dentro dos Testes de Software que é a Elaboração dos casos de Testes, ou simplismente já testar o sistema com as idéias levantadas.

 

Este levantamento pode ser feito simples em qualquer bloco de notas por exemplo, para mais tarde a elaboração em um documento próprio ou testlink.

 

 

O Caso de Teste deve ter as características a seguir para que possa ser usado e atender às expectativas de validação da qualidade:

- efetivo: testar o que se planejou testar;
- econômico: sem passos desnecessários;
- reutilizável: que possa ser repetido;
- rastreável: que possa identificar o requisito a ser testado;
- auto-explicativo: que possa ser testado por qualquer testador.

Livro: Base de Conhecimento de Testes de Software

 

A decisão de determinar o nível e estrutura das condições de teste pode ser baseada em características funcionais e não-funcionais dos itens de teste usando o seguinte:

1. Granulosidade da base de teste: Exemplo: requisitos de alto nível podem gerar inicialmente condições de alto nível. Exemplo: prove que a tela X funciona, a partir da qual é possível derivar condições de teste de baixo nível. Exemplo: prove que a tela X rejeita um número que é um dígito menor que o comprimento correto.

2. Riscos de produtos correspondidos: Exemplo: para uma característica de alto nível de risco, condições de teste detalhadas devem ser um objetivo definido.

3. Requisitos para relatório gerencial e rastreabilidade de informação

4. Quando a decisão for tomada para trabalhar com condições de teste somente e não desenvolver caso de teste. Por exemplo, usando condições de teste para foco de teste sem script.

Livro: Syllabus



A modelagem de caso de teste inclui a identificação de:

· pré-condições tais como o projeto ou os requisitos do ambiente de teste localizados e os planos para sua entrega
· os requisitos de dados de teste
· os resultados esperados e as pós-condições

Livro: Syllabus


 

Vejamos mais algumas Técnicas de Levantamento de Casos de Testes

- Levante casos em que o seu teste irá validar os valores limites dos campos(tente criar estes casos de testes para os desenvolvedores realizar nos Testes de Unidade)

- Levante casos de testes para o fluxo principal

- Levante casos de testes para fluxos alternativos(campos obrigatórios vazios, salvar um cadastro sem nenhum campo preenchido, na edição do cadastro apagar os dados e salvar, etc)

- Levante casos em que o usuário poderia exigir algo do sistema em que o sistema não esteja preparado para responder a ação

- Levante casos de testes de usabilidade, descrevendo como o layout deveria ficar ou como deve ser a ordenação do campo para utilização apenas pelo teclado.

- Levante casos de testes exploratórios iniciais, estes irão indicar se a suite de teste(bloco de testes de uma tela, caso de uso ou módulo), já pode ser iniciada.

 

Vejam alguns Casos de Testes que poderíamos levantar de exemplo.

 

ST001 - Suite Cadastrar Time

CT001 - Validar exploração da tela através de cliques em todos os campos e botões
CT002 - Validar Cadastrar time
CT003 - Validar Cadastrar time sem nenhum campo preenchido
CT004 - Validar campo Nome
CT005 - Validar campo Empresa
CT006 - Validar campo responsável
CT007 - Validar cadastro do time no banco

 

ST002 - Suite Cadastrar Filme

CT008 - Validar Cadastrar filme
CT009 - Validar campos obrigatórios do cadastro de filmes
CT010 - Validar tipo campo Diretor
CT011 - Validar inserção de caracteres especiais no campo Nome
CT012 - Validar inserção de atores principais

 

Então pessoal, espero colaborar a todos com estas técnicas para levantamento dos testes.

Qualquer dúvida estou à disposição.

Conceito sobre Testes

Posted by JJ on January 22, 2013 at 1:00 PM Comments comments (5)

Uma coisa que sempre me incomodou quando participei de discussões e até entrevistas de emprego, foi o conceito um tanto quanto errado sobre Testes.

 

O que são os testes? Para que serve teste? Por que testar? Defina testes.

 

Vamos ver algumas definições bibliograficas:

 "O objetivo principal do processo de teste é simplismente encontrar o maior número possível de defeitos no software." Base de Conhecimento em testes de software - CBTS

"Processo que consiste em todas as atividades do ciclo de vida, tanto estáticas quanto dinâmicas, voltadas para o planejamento, preparação e avaliação de produtos de software e produtos de trabalho relacionados a fim de determinar se elas satisfazem os requisitos especificados e demonstrar que estão aptas para sua finalidade e para a detecção de defeitos." Glossário de Termos ISTQB


 "O teste do software é a investigação do software a fim de fornecer informações sobre sua qualidade em relação ao contexto em que ele deve operar. Isso inclui o processo de utilizar o produto para encontrar seus defeitos. O teste é um processo realizado pelo testador de software, que permeia outros processos da engenharia de software, e que envolve ações que vão do levantamento de requisitos até a execução do teste propriamente dito." Wikipédia

 

Para muitas pessoas, se resume a isto:

'utilizar o produto para encontrar seus defeitos'

'O objetivo principal de teste é simplismente encontrar o maior número possível de defeitos no software'

 

Para mim se resume e eu respondo da mesma forma as questões:

O que são os testes? - São um conjunto de metodos e técnicas para validar se o produto é o que foi especificado(solicitado)

Para que serve teste? - Os testes servem para validar se o produto é o que foi especificado(solicitado)

Por que testar? - Porque é necessário validar se o produto é o que foi especificado(solicitado)

Defina testes - É validar se o produto é o que foi especificado(solicitado)


Estou errado? Não.

Errado está em quem define Testes em Encontrar Bugs.


Mas encontrar bug não é um objetivo dos testes? SIM. UM DOS OBJETIVOS. Não O objetivo. Pois o testador pode 'desenvolver' o software sem achar bugs, apontando melhorias, melhorando processos, melhorando a qualidade com que se é utilizado o software.


Este conceito é a mesma coisa que debilitar o testador. Ou no mínimo seta-lo como um 'Escovador de bugs'. Lembram do termo 'Escovador de Bits'?

 

"Escovador de bit é uma gíria usada com referência às pessoas que se dedicam a alterar o modo de funcionamento de um sistema de computação através de alterações no seu software" Wikipédia.

 
Pois então não podemos definir um desenvolvedor por aquele que só trabalha focado no código estrutural em si.


Escovador de Bugs.

"O objetivo principal do processo de teste é simplismente encontrar o maior número possível de defeitos no software." Base de Conhecimento em testes de software

 

Então pessoas que defendem esta idéia, vocês tem o direito de continuar com ela. Mas, por favor pessoal que querem entrar nesse mundo novo e 'lindo'! Entendam o conceito de Testes e principalmente o que é Qualidade de Software!

 

Abraços