Testes automatizados em sistemas autenticados com certificados digitais, usando Selenium e PhantomJS
![Imagem](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitm9RoP5sBy6U7nkuKAexc8soI-5bam9RYZ6gwXdJUlb-BVm0_1y2FsYyssGLYkpUN8_0j6XJtaE2GijtzGYwUq4JMxxO6YNzzlgjw1k8iU3sSgC2lQYCnSlNwgtNJQlwp1Jz0XL2SqsPl/s400/selenium_certificate_browser_request.png)
A automatização de testes é uma disciplina muito importante hoje em dia. Entre várias técnicas e ferramentas diferentes, uma das que podemos utilizar para termos um conjunto de testes funcionais que possam ser facilmente repetidos é o Selenium. O Selenium é uma ferramenta que permite que a execução de passos que uma pessoa faria em um browser web (Chrome, Edge, etc.) possa ser programada. Com isso, toda vez que for necessária a validação de uma nova versão de sistema ou correção, este grupo de testes pode ser rodado de forma automática. Ainda falando sobre a execução do Selenium, ele trabalha criando uma instância do respectivo browser e enviando comandos para ele. Dessa forma é feita a simulação de preenchimento de caixas de texto, cliques em botões, etc. Quando um teste automatizado com Selenium é rodado, pode-se ver todo o teste acontecendo. Entretanto, há um problema nesta abordagem. Caso a sessão do usuário que está executando os testes seja bloqueada, o Selenium não consegue