Testes / selenium / (testar PDFs é possível?)

Olá pessoal!

Tem como automatizar testes de relatórios em PDFs?
Que programa devo utilizar para ler um PDF e fazer as comparações entre as strings? Isso é possível?

Eu preferiria uma estratégia diferente: isolar bem as partes do programa responsáveis por obter (e processar, formatar, etc) os dados, e a outra parte que monta o PDF propriamente dito.

Essa primeira parte, que é a mais crítica, pode então ser testada automaticamente à vontade. Na geração do PDF você faz uma verificação manual, inclusive porque os problemas que podem dar aqui são apenas visuais já que os dados foram garantidos na outra etapa.

[quote=gomesrod]Eu preferiria uma estratégia diferente: isolar bem as partes do programa responsáveis por obter (e processar, formatar, etc) os dados, e a outra parte que monta o PDF propriamente dito.

Essa primeira parte, que é a mais crítica, pode então ser testada automaticamente à vontade. Na geração do PDF você faz uma verificação manual, inclusive porque os problemas que podem dar aqui são apenas visuais já que os dados foram garantidos na outra etapa.[/quote]

Eu também tava pensando nisso, mas o que estão querendo realizar aqui onde trabalho são testes de caixa preta. Não tô muito animado em fazer teste funcional disso.
Existe algum leitor de PDF?

Mesmo assim, muito obrigado pela sugestão. Caso não encontre, vou fazer como vc disse.

[quote=Luiz Augusto Prado][quote=gomesrod]Eu preferiria uma estratégia diferente: isolar bem as partes do programa responsáveis por obter (e processar, formatar, etc) os dados, e a outra parte que monta o PDF propriamente dito.

Essa primeira parte, que é a mais crítica, pode então ser testada automaticamente à vontade. Na geração do PDF você faz uma verificação manual, inclusive porque os problemas que podem dar aqui são apenas visuais já que os dados foram garantidos na outra etapa.[/quote]

Eu também tava pensando nisso, mas o que estão querendo realizar aqui onde trabalho são testes de caixa preta. Não tô muito animado em fazer teste funcional disso.
Existe algum leitor de PDF?[/quote]
Basta você programar isso como qualquer programa em Java. Pode usar iText por exemplo, onde seu teste automatizado vai abrir o PDF gerado pelo sistema a qual está testando.

[quote=gomesrod]Eu preferiria uma estratégia diferente: isolar bem as partes do programa responsáveis por obter (e processar, formatar, etc) os dados, e a outra parte que monta o PDF propriamente dito.

Essa primeira parte, que é a mais crítica, pode então ser testada automaticamente à vontade. Na geração do PDF você faz uma verificação manual, inclusive porque os problemas que podem dar aqui são apenas visuais já que os dados foram garantidos na outra etapa.[/quote]
“Se algo pode dar errado, dará.”. Por isso só uso testes funcionais, com Selenium. Não adianta muito todo um trabalho se o erro pode estar na interface com o usuário, entre a entrada solicitada e a saída esperada.

[quote=javaflex]
Basta você programar isso como qualquer programa em Java. Pode usar iText por exemplo, onde seu teste automatizado vai abrir o PDF gerado pelo sistema a qual está testando.[/quote]

iText! é isso que preciso.
Muito obrigado pela dica!
Já estou dando uma lida sobre ele.

[quote=javaflex]
“Se algo pode dar errado, dará.”. Por isso só uso testes funcionais, com Selenium. Não adianta muito todo um trabalho se o erro pode estar na interface com o usuário, entre a entrada solicitada e a saída esperada.[/quote]

Exatamente!

Aqui chamamos de ‘teste funcional’ o teste em que o testador faz o teste de forma manual.
No caso daqui, estamos automatizando todos os testes.
São os webdrivers do selenium que farão os testes a nivel de browser.
No Caso do PDF, no momento em que ele cair na pasta de download, o passo do teste deixará de ser realizado pelo selenium (webdriver) e passará para outro método, onde implementarei o teste com o uso do itext.

Novamente obrigado pela dica.

[quote=Luiz Augusto Prado][quote=javaflex]
“Se algo pode dar errado, dará.”. Por isso só uso testes funcionais, com Selenium. Não adianta muito todo um trabalho se o erro pode estar na interface com o usuário, entre a entrada solicitada e a saída esperada.[/quote]

Exatamente!

Aqui chamamos de ‘teste funcional’ o teste em que o testador faz o teste de forma manual.
No caso daqui, estamos automatizando todos os testes.
São os webdrivers do selenium que farão os testes a nivel de browser.
No Caso do PDF, no momento em que ele cair na pasta de download, o passo do teste deixará de ser realizado pelo selenium (webdriver) e passará para outro método, onde implementarei o teste com o uso do itext.

Novamente obrigado pela dica. [/quote]
Exatamente isso, no meu caso uso WebDriver para .NET.