Skip to content

Verificação de Texto em Páginas

Julian Cesar edited this page Jan 2, 2017 · 6 revisions

Comportamento Esperado

Ao utilizar a frase [Então] será exibido "< texto >" o teste deverá procurar em toda a página (inclusve no título e textos fora da tag body.

Implementaçao Atual

Hoje a implementação utilizad o getText (implementação nativa do Selenium/Webdriver) para pegar o texto e depois faz uma verificação. Tudo isso dentro de um controle de timeout implementado manualmente.

Alternativas

  • A técnica utilizada pelo @ttperes é muito mais rápida, pois utiliza XPath para verificar se o texto existe, contudo não conseguimos fazer com que o XPath encontrasse o texto dentro de uma tag que esta dentro da tag, por exemplo:

Funciona:

<div>Este texto é encontrado<div>

Não Funciona:

<div>Este texto é <b>não é encontrado</b></div>

Detalhes Estranhos

  • já aconteceu mais de uma vez de existirem mais de 1 tag body no sistema
  • existem muitos sistemas com muito código javascript/css no html, o que pode dar um falso positivo caso o texto procurado exista nestes trechos

Problema atual

Em casos em que o código fonte é muito grande o selenium demora para trazer o texto todo para verificação, gerando lentidão no passo.

Solução de Contorno Atual

Utilizar a frase [Então] será exibido na "< nome do elemento >" o valor "< valor >" para verificar o texto especificamente em um elemento

Verificações

Para verificar a situação basta colocar o teste em modo debug utilizando a versão 1.5.2 (https://github.com/demoiselle/behave/wiki/Como-colocar-o-teste-em-modo-DEBUG).

Após colocar em modo debug execute o teste e verifique que aparecerá no log o seguinte texto:

DEBUG (000) [WebBase]: O tamanho do texto analizado é de [1894]

O valor é exibido em bytes.