Não estive envolvido com isso, uma equipe fez experimento, teve apresentação (que não fui) e fiquei sabendo que devem propor para os projetos adotarem mais na frente, então ninguém usa ainda. Mas comentando pelo pouco que li, só pelo fato de ser mais humano que TDD já algo a se dar atenção pelo menos. Não me simpatizo por TDD, particularmente acho que torna o desenvolvimento muito chato, e motivação é mais importante para a qualidade do que alguma técnica que não seja ao gosto da equipe, o que pode acabar atrapalhando, por mais que reconheça “tecnicamente suas vantagens”, nem tudo é melhor para todos.
Cada sistema tem seu próprio projeto para Teste de Aceitação. Neste projeto tem classes de teste de acordo com cada tela do sistema. Reusabilidade só mesmo da parte infraestrutura, que é mais outro projeto separado, só para centralizar códigos que se tornam genéricos conforme for precisando, mas nada para engessar, o uso é livre da instância do WebDriver, como no exemplo do site que passei em Java, nada demais do normal.
Olha fui em download para ver qual o selenium usado , porém não é o 1 . É selenium-java-2.32.0.jar .
Eu estava tentando testar o título seja bem-vindo na primeira página , porém o comando que estava utilizando era para testar texto digitado na página .
Agora estou a procura do comando para testar o título . Mas consigo entender o processo até a geração dos scripts , depois eu estou descobrindo .
Já estou conseguindo evoluir na ferramenta .
O script que o Selenium Ide lança é um java script certo ? E no caso eu importei como junit4 e abri no netbeans , para executar esse script preciso das classes main e das bibliotecas do Selenium Client Driver ?
Ah entendi , o custo sempre pesa . A ferramenta da hp também é paga ?
E no caso ferramentas como Selenium que usamos , são confiáveis ? O que você acha ?
Obrigada pelas respostas e pelo apoio .
Você é um profissional qualificado e compartilha o que sabe . Parabéns por ser assim .
Não estive envolvido com isso, uma equipe fez experimento, teve apresentação (que não fui) e fiquei sabendo que devem propor para os projetos adotarem mais na frente, então ninguém usa ainda. Mas comentando pelo pouco que li, só pelo fato de ser mais humano que TDD já algo a se dar atenção pelo menos. Não me simpatizo por TDD, particularmente acho que torna o desenvolvimento muito chato, e motivação é mais importante para a qualidade do que alguma técnica que não seja ao gosto da equipe, o que pode acabar atrapalhando, por mais que reconheça “tecnicamente suas vantagens”, nem tudo é melhor para todos.
Cada sistema tem seu próprio projeto para Teste de Aceitação. Neste projeto tem classes de teste de acordo com cada tela do sistema. Reusabilidade só mesmo da parte infraestrutura, que é mais outro projeto separado, só para centralizar códigos que se tornam genéricos conforme for precisando, mas nada para engessar, o uso é livre da instância do WebDriver, como no exemplo do site que passei em Java, nada demais do normal.[/quote]
Vc quer dizer q os desenvolvedores são os mesmos q testam? Ou testam só preliminarmente? Vcs tem algum critério para automatização (visto q nem tudo compensa ser automatizado)?
Aqui automatizamos prioritariamente testes de regressão, isto é, os testes repetitivos, aqueles testes q após sincronização de nova funcionalidade e etc devem sempre ser executados para garantir q o q funcionava continua funcionando, daí estes testes, suíte de testes ficam em um repositório único, podendo ser reusados para qlq. novo projeto.
[color=red]EDITED: Este repositório central é um projeto do Eclipse q está no SVN, sendo assim é baixa-lo e os novos casos de testes são incluídos nele e estando em um novo projeto faz-se referencia dentre projetos.[/color]
[quote=jeh_dias]Olha fui em download para ver qual o selenium usado , porém não é o 1 . É selenium-java-2.32.0.jar .
[/quote]
Esta versão do Selenium 2.32 é o do link q passei para download, ela é de fato a WebDriver. Sendo a versão o WebDriver vc não precisa se preocupar com esta questão de Server e Client isto está encapsulado para vc…
Vc pode invocar o método getTitle(); da classe WebDriver, qdo. recuperar o título do formato de String “vc trouxe para o Java” então pode usar o método da API Java para comparar String, o equals();.
Vc tem métodos fundamentalmente das classes WebDriver e Selenium. Sempre procure os comandos lá.
Ex: WebDriver driver = ...
driver.getTitle();
Ex: Selenium selenium = ...
selenium.?
O Selenium IDE gera código para várias linguagens, vc precisa parametrizar qual. Exportando para o Eclipse com o .jar q vc citou acima “selenium-java-2.32.0.jar” devia funcionar. Mas particularmente não gosto do Selenium IDE, pois gosto de trabalhar diretamente no código, ao invés de ter um código produzido automaticamente e ficar sem entender o q foi exatamente gerado e o porquê (não é meu caso, mas acredito q seja o seu, de não entender o q foi gerado com detalhes,
[color=red]EDITED: visto q ele utiliza de XPath para identificação d elementos DOM no HTML e etc, não significa q vc não vai poder neste caso utilizar do mesmo recurso no WebDriver, mas vc se usar vai saber o porquê q está usando, além do q o XPath não é a melhor opção qdo. se tem mais d uma opção, um problema do XPath é q se o seu sistema muda muito, se a opção do botão por exemplo mudar um pouquinho de posição propriamente dito ele já talvez não irá encontrar mais o elemento na página pois o XPath é a localização exata do mesmo na tela).[/color]
[quote]
Ah entendi , o custo sempre pesa . A ferramenta da hp também é paga ? [/quote]
Sim é paga, e muito bem paga rs.
[quote]
E no caso ferramentas como Selenium que usamos , são confiáveis ? O que você acha ?
.[/quote]Sim, das ferramentas free para testes funcionais na plataforma Web, é a melhor (com base em opnião d vários especialistas)…
Sim, se o desenvolvedor desenvolveu a tela de cadastro de pedido, tem que em seguida programar o teste de selenium do cadastro de pedido.
Isso não compreendi, mas ok se acima já responde.
Nem tudo é testado mesmo. É testado se o controle de acesso a cada action está conforme o esperado para cada grupo de acesso, se um registro foi gravado com sucesso e se as consultas se mantem retornando um resultado esperado na grid. Por enquanto não cobre mais do que isso, o resto é teste unitário de cada regra de validação das entidades e o teste manual da equipe de qualidade. Mas todas as telas possuem teste. Claro que quando é algo muito urgente o teste fica para depois, mas não é esquecido.
Exatamente, isso é o mais importante desses testes, pois toda vez ter que fazer teste manual de todo sistema pra saber se houve impacto é desumano com o sistema crescendo sem parar.
Sim, se o desenvolvedor desenvolveu a tela de cadastro de pedido, tem que em seguida programar o teste de selenium do cadastro de pedido.
Isso não compreendi, mas ok se acima já responde.
Nem tudo é testado mesmo. É testado se o controle de acesso a cada action está conforme o esperado para cada grupo de acesso, se um registro foi gravado com sucesso e se as consultas se mantem retornando um resultado esperado na grid. Por enquanto não cobre mais do que isso, o resto é teste unitário de cada regra de validação das entidades e o teste manual da equipe de qualidade. Mas todas as telas possuem teste. Claro que quando é algo muito urgente o teste fica para depois, mas não é esquecido.
Exatamente, isso é o mais importante desses testes, pois toda vez ter que fazer teste manual de todo sistema pra saber se houve impacto é desumano com o sistema crescendo sem parar.[/quote]
Então quer dizer q sua equipe de qualidade não utiliza Selenium ou melhor, testes automatizados?
Bom, sua pergunta é interessante… Sabia?! Acredito q um desenvolvedor desatento responderia de kra q sim, q é obvio q usa o JavaDoc. Mas aqui utilizamos além do JavaDoc um artefato que chamamos de Release para a versão correlata, nesta indicamos todas classes, métodos e etc que foram alterados e o porquê, realmente isto facilita a manutenção e implementação de nova funcionalidade, ah e claro lá tem toda uma rastreabilidade (desenvolvedor, data, projeto e etc).
Sim, se o desenvolvedor desenvolveu a tela de cadastro de pedido, tem que em seguida programar o teste de selenium do cadastro de pedido.
Isso não compreendi, mas ok se acima já responde.
Nem tudo é testado mesmo. É testado se o controle de acesso a cada action está conforme o esperado para cada grupo de acesso, se um registro foi gravado com sucesso e se as consultas se mantem retornando um resultado esperado na grid. Por enquanto não cobre mais do que isso, o resto é teste unitário de cada regra de validação das entidades e o teste manual da equipe de qualidade. Mas todas as telas possuem teste. Claro que quando é algo muito urgente o teste fica para depois, mas não é esquecido.
Exatamente, isso é o mais importante desses testes, pois toda vez ter que fazer teste manual de todo sistema pra saber se houve impacto é desumano com o sistema crescendo sem parar.[/quote]
Então quer dizer q sua equipe de qualidade não utiliza Selenium ou melhor, testes automatizados?[/quote]
Não, pois roda automático todo dia de madrugada no TFS (da Microsoft) e recebemos e-mail se tiver erros. Essa parte de servidor tô por fora nem mexo com isso, só sei que funciona. E também manualmente por um motivo qualquer, como antes de por em produção. Equipe de qualidade no momento só faz teste manual, não se envolve em testes automatizados. Com BDD, caso seja adotado, ai sim a coisa muda um pouco.