Como Fazer Testes de Interface sem Interface Gráfica com o Xvfb
O Xvfb, X virtual framebuffer, é um servidor X capaz de rodar em máquinas sem hardware para display.
Ele guarda tudo na memória virtual.
Estamos usando o Xvfb em alguns servidores de Integração Contínua (usamos o Hudson) na Intelie juntamente com o Selenium.
Na inicialização da máquina, criamos um X virtual com o Xvfb e, antes de executar os testes de interface, dizemos qual Display usar.
Como Instalar o Xvfb no Ubuntu
Digite: aptitude install xvfb. Sim, só isso. :)
Como Criar um X Virtual com o Xvfb
Digite: Xvfb :1 -ac.
Dessa forma, ele irá escutar conexões no Display ":1".
O parâmetro -ac serve para remover restrições de acesso. Acho que na época, tive problemas de permissão e o coloquei. De qualquer forma, é possível configurar quem tem acesso a um determinado display.
Dica: coloque para criar um X na inicialização da máquina.
Como Configurar Qual Display Usar Antes dos Testes
Exporte a variável display com: export DISPLAY=:1.
Mande executar seus testes e seja feliz. Ou não. /o/
Como Tirar Screenshots no X Virtual
Instale o Imagemagick (apt-get install imagemagick).
Digite: import -window root maoe.png.
Com o -window root, você irá tirar uma screenshot de toda a tela.
Ela será salva no maoe.png.
Pra abrir, aí você se vira. ;)
Pô, mostraí uma fotinha
Beleza:
Foto do Jordan Sissel
Para maiores informações...
Leia o manual. :)