A busca por textos presentes em tela auxilia sobremaneira na localização de elementos sem localizadores ou de difícil acesso, desta forma é possível realizar a automação pela busca de texto, tanto através do texto exato como através do texto parcial.

Em muitos casos a validação se dá pelo retorno de um texto, um alerta, uma mensagem de erro ou uma mensagem de sucesso. Para estas situações a utilização do xPath, para localizar este texto em tela, é um dos caminhos prováveis.

Busca por texto exato

Nesta situação, necessitamos que seja o texto exato e integral para que o elemento seja validado.

No exemplo “//*[.=’We Care About Your Health’]” podemos identificar que esta busca só irá retornar um resultado se encontrar um elemento que tenha um texto idêntico ao descrito.

Outro exemplo é possível com o mesmo resultado:  //*[text()=’Make Appointment’]

A substituição de uma maiúscula por minúscula já não retornaria nenhum resultado, desta forma se trata de uma validação bem precisa.

Busca por texto parcial

Nesta situação a busca é parcial “//*[contains(text(),’About Your’)] ” mais também é case sensitive

Já nesta situação temos uma busca parcial que ignora maiúsculas, transformando todos os textos da página em minúsculo e realizando, assim, a busca parcial.

“/html/body//text()[contains(translate(.,’ABCDEFGHIJKLMNOPQRSTUVWXYZ’,’abcdefghijklmnopqrstuvwxyz’),’make’)]”

Em nosso framework de automação, uma medida útil para estas situações é criarmos uma função para cada busca com as mais variadas formas de construção de xPath, transformando assim o texto em parâmetro e deixando os passos da automação mais limpos e legíveis.