Teste de Automação para software em JAVA

Olá Pessoal,

Por favor, alguém tem uma dica de uma ferramenta freeware para realizar testes automatizados em um sistema desenvolvido em JAVA?

Obrigada :thumbup:

Você pode criar o seu próprio software para teste de automação.

De uma olhada nesse post: http://www.javasimples.com.br/mundo-java/robot-o-que-isso/

Leia os comentarios tambem… :smiley:

Olá!

Obrigada pela dica, mas preciso de uma ferramenta free que não necessite alterar o fonte do software que estou testando. Teria alguma outra dica?

Mais uma vez muito obrigada!

Abraços

Não conheço nada de testes ( ainda ), mas acho que para testes de unidade automatizados o JUnit é o mais aconselhado.

Que legal esse software EM JAVA.

Ele tem interface o que? Web? Swing? AWT? SOAP? REST?

Se for web eu indico vc estudar Selenium para começo de conversa.

Automação existem em diferentes niveis. Eu posso ter

int soma(int a, int b){ return a + b; }

e testar de forma unitaria

void testSoma(){ assertTrue(objeto.soma(2,2),4, "2 + 2 deveria ser 4"); assertTrue(objeto.soma(-2,2),0, "..."); assertTrue(objeto.soma(2,-2),0,"..."); assertTrue(objeto.soma(-2,-2),-4,"..."); }

ou testar se uma camada intermediaria faz o que deve fazer

   void mudarSenha(Usuario u, String senhaNova){
               u.updateSenha(senhaNova.toLowerCase());               
   }

E pode criar um mock do objeto usuario

void testSenha(){
     String senha = "AaBbCc";
     Mock usuarioMock = mock(Usuario.class);
     usuarioMock.expects(once()).method("updateSenha").with(eq(senha.toLowerCase()));

     objeto.mudarSenha((Usuario) usuarioMock.proxy(),senha);
}

com JMock versão 1 (http://www.jmock.org/jmock1.html) eu criei um objeto usuario de mentira que só recebe o updateSenha e, se recebe algo diferente de aabbcc ou não for chamado este metodo eu tenho uma falha no teste.

Um teste de integração verifica se eu REALMENTE alterei a senha.

Um teste de interface iria PELA INTERFACE (seja web, swing, API REST) simular um usuario ou outro sistema para efetuar ações no sistema. Tente usar alguma ferramenta de cobertura de teste para ver o quanto de codigo vc esta exercitando nesses testes (para javfa tem o EMMA emma.sourceforge.net). Não adianta fazer teste burro, tem que agregar valor. Se vc alterou uma parte IMPORTANTE do seu sistema como a string de conexão de banco os testes devem avisar.

Se for web vc pode stressar o sistema com JMeter.