Novos recursos do Selenium Grid

Saiu ontem a versão 1.0.5 do Selenium Grid, e com ela veio uma das funcionalidades mais esperadas: o gerenciamento dos Remote Controls conectados ao hub.

Antes, se um Remote Control (RC) estivesse fora por algum motivo inesperado, ele continuava disponível no hub, o que fazia com que se algum cliente tentasse se conectar a esse RC ele receberia um erro.

Agora, se um RC está fora do ar, ele sai automaticamente da lista de RCs disponíveis. Essa retirada pode ocorrer por três diferentes motivos:

  • Se um cliente solicita uma sessão ao Hub e ao tentar reservar um RC, esse RC está indisponível
  • Se o RC não responder a uma chamada periódica do hub para verficar se o RC está vivo. Esse mecanismo se chama hearbeat mechanism, que traduzindo é uma checagem do batimento cardíaco. A frequência dessa checagem é de 3 minutos. Você pode alterar esse valor no grid_configuration.yml usando a propriedade remoteControlPollingIntervalInSeconds
  • Se uma sessão do RC está idle por mais de um tempo configurável. O valor default é a cada 5 minutos e você pode alterar isso no grid_configuration.yml usando a propriedade sessionMaxIdleTimeInSeconds

Outro cenário que poderia ocorrer e que foi corrigido é se você tivesse que reiniciar o hub, você perderia todos os RCs conectados a ele. Foi criada uma configuração para que cada RC pingue o hub a cada X segundos configuráveis. Com isso você pode reiniciar o hub e é só uma questão de segundos até que todos os RCs disponíveis voltem a ficar disponíveis para serem usados. A frequência dessa checagem é a cada 30 segundos, mas você pode alterar isso ao iniciar o RC:

ant -DhubPollerIntervalInSeconds=120 launch-remote-control

É claro que todas essas checagens consomem recursos da máquina e da rede, mas vale muito a pena, já que antes não havia nenhum gerenciamento e era uma dor de cabeça quando você tinha algum problema de RCs indisponíveis ou travados.

Para mais informações leia essa documentação em inglês.

Outra notícia que saiu, é que o mantenedor do projeto opensource do Selenium Grid irá mudar. O desenvolvedor atual está sem tempo e sem prioridades para manter o projeto e está em busca de um sucessor. Para ler mais sobre isso acesse aqui.

Até a próxima.

Tags:

blog comments powered by Disqus