Como criar estruturado teste automático com selênio (junit ou testng)? Qual é a sua melhor prática para isso?

StackOverflow https://stackoverflow.com/questions/1326783

Pergunta

Eu escrevi testes que estão usando o selênio para testes funcionais. Eu estou usando Java. Eu gostaria de ser capaz de criar estrutura entre os testes. É possível fazê-lo com jUnit ou TestNG?

gostaria de ser capaz de criar uma estrutura de teste que irá produzir relatório como este:

Top test FAIL
- Module1 test PASS
-- Module1Class1 test PASS
-- Module1Class2 test PASS
--- Module1Class3Method1 test PASS
--- Module1Class3Method2 test PASS
- Module2 test FAIL
-- Module2Class1 test FAIL
--- Module2Class1Method1 test PASS
--- Module2Class1Method2 test FAIL
--- Module2Class1Method3 test PASS
Foi útil?

Solução 5

Eu só ter encontrado a solução para esta questão, então eu estou colocando aqui link para que outros possam se beneficiar dele. beust.com Eu não tente isso ainda, apesar de tudo.

Update: Depois de tentar isso pode gerar resultados como este:

Module1.Class3.Method1 PASS
Module1.Class3.Method2 PASS
Module2.Class1.Method1 PASS
Module2.Class1.Method2 FAIL
Module2.Class1.Method3 PASS

A falha nome do método é "Method2" está localizado na classe "Class1" e é pacote "Module2".

Eu usei todas as possibilidades normais de TestNG (muitos deles) + Eu tenho substituído o TestListenerAdapter usando ITestResult métodos:. GetName () e getTestClass () getName ()

Não é realmente a estrutura que eu estava procurando, mas pouco a análise pode me dizer onde a falha foi. E como um plus eu não tenho para nomear métodos com classe e nome do pacote na mesma.

Outras dicas

A melhor padrão que eu vi pela organização do código por trás de testes de selênio é o padrão objeto página:

http: //blog.m. artins.net/acceptance-tests-with-jbehave-selenium-page-objects/

Aqui está uma biblioteca auxiliar Java:

http://code.google.com/p/webdriver/wiki/PageFactory

Você não pode, porque este não é o formato que os testes interpreta selênio. O selênio suporta várias sintaxes de idiomas diferentes, o mais fácil dos quais são JS e HTML linhas da tabela. Você pode usar o recurso de registro do Selenium IDE do Firefox, se você não quer escrever mão seus testes para caber uma determinada sintaxe da linguagem.

que você considere usar Selenium Remote Control? http://seleniumhq.org/projects/remote-control/

Eu recomendo a olhar para o JUnit ou relatórios XML TestNG. Você deve ser capaz de transformá-los com um pouco de XSLT para fornecer um novo relatório HTML com o formato exigido.

Em TestNG você pode definir suites através do arquivo de configuração (testng.xml) que deve corresponder às suas necessidades. Você poderia estruturá-lo para ter um grupo de teste para cada módulo. Uma falha em um grupo de teste torna o teste inteiro como um fracasso. Mas eu acho que você também pode fazer isso em JUnit, o que eu não estou muito familiarizado.

O que é bom em TestNG é que você pode definir dependências. Estes irão impor uma certa ordem lógica para a execução do teste e irá ignorar testes que dependem de testes de falha, em vez de deixá-los falhar também. Torna a análise muito mais fácil e testes terminam mais cedo porque todos os testes que são potencialmente fadado ao fracasso será deixado de lado.

Mas como eu disse antes, eu acho que você pode fazer isso em JUnit também. É mais uma questão de gosto. E se você decidir de outra forma, não é uma grande empresa converter de JUnit para TestNG ou vice-versa.

Eu não sou completa certeza se estou certo here..but eu acho que isso pode ajudá-lo: http://www.jamesnetherton.com / blog / 2007/07/02 / Criando-a-selênio-test-suite /

Você pode agrupar seus testes com ele de uma forma muito fácil de Structered.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top