Semana Groovy 40

Post sobre Geb aqui no blog!

Geb: Automatizando seu browser com Groovy – post excelente do Felipe Mamud publicado aqui no blog do Groovy & Grails Brasil. Leitura obrigatória! – http://www.grailsbrasil.com.br/blog/index.php/2015/11/11/geb-automatizando-seu-browser-com-groovy/

Oportunidade de trabalho no Mercado Livre em São Paulo

O Mercado Livre está com uma vaga de trabalho para desenvolvedor Grails em São Paulo. É uma excelente oportunidade para se atuar em uma das maiores plataformas de e-commerce do mundo (e que é 95% Grails) – Mais detalhes neste link: https://www.zao.com/9Qgrvm 

Iniciando com Docker

Encontrei um guia muito bom sobre Docker no DZone. É um excelente ponto de partida para aqueles que estão começando a trabalhar com esta ferramenta! – https://dzone.com/refcardz/getting-started-with-docker-1

Projeto interessante: GR8 CRM

Já precisou implementar um CRM (Costumer Relationship Manager) em algum projeto? Este plug-in te fornece um pronto que você pode facilmente implantar em aplicações Grails. Vale à pena conferir! – http://gr8crm.github.io/

Apresentações

Geb for testing your Grails Application – Apresentação interessante ensinando a usar o Geb em projetos Grails – https://www.youtube.com/watch?v=bBkSudTVdvs

Lightweight HTTP applications in the JVM with Groovy and RatPack – Mais uma vez RatPack mostrando seu valor. Uma alternativa muito interessante ao Node.js – https://www.youtube.com/watch?v=jL8fB-SS4yM

Run Grails 3 App from IntelliJ with Runtime Reloading – mais detalhes sobre como trabalhar com Grails 3 no IntelliJ IDEA – http://sergiodelamo.es/run-grails-3-app-from-intellij-with-runtime-reloading/

Geb: Automatizando seu browser com Groovy

Há um tempo venho querendo estudar o Geb que é uma solução de automação para browsers. O bacana é que ele utiliza o conceito de WebDriver, com uma DSL similar ao jQuery e seus seletores e por fim a melhor parte: Groovy!

O ponto é que você pode utilizar o poder da linguagem Groovy em todas as áreas de automação do Geb, como por exemplo realizar uma iteração em uma coleção de elementos HTML recuperados por um seletor do Geb.

Para ilustrar tudo isso que falei nada melhor que um exemplo para isso. Resolvi fazer algo que queria fazer um tempo: um histórico de onde vieram as linguagens baseada no Wikipedia. (para este exemplo utilizei o WebDriver do Firefox)

O objetivo deste script é buscar todas as linguagens de programação que Groovy influenciou. Para isso utilizamos a URL da página do Groovy no Wikipedia, buscando pela tag <th> que contém o texto “Influencied”. Após isso iteramos todos os elementos <a> do primeiro vizinho da <th> em questão. Com a lista de links na mão, criamos um mapa com todas as linguagens e suas respectivas URLs. Viu como é fácil? Vamos ver no código como que fica:

[gist https://gist.github.com/fmamud/37883e586883b2823c35 /]

Dica: experimente trocar a URL por outra linguagem do Wikipedia =D

Uma possível melhoria seria um algoritmo recursivo para retornar uma árvore de influências de linguagens, mas vamos deixar este para outro post.

No meu caso tive problemas com Grab utilizando Proxy. Para isso configurei minha variável de ambiente JAVA_OPTS com os valores de meu proxy.  (Veja aqui)

[gist https://gist.github.com/fmamud/2fcd210df310ec79353e /]

E também utilizei a dica do lalyos com uma configuração do Ivy:

[gist https://gist.github.com/lalyos/9366690 /]

E para quem usa Windows, de “quebra” fiz um script em PowerShell para recuperar o arquivo de configuração do Grab:

[gist https://gist.github.com/fmamud/54ba06bc8956b4786b7b /]

É isso ae pessoal, espero que tenham sentido o poder que o Geb tem em nossos testes automatizados com nossas aplicações Web.

[]s
Felipe Mamud
@ftmamud

 

Semana Groovy 39

Conhecendo o Ratpack

Dan Woods apresenta o RatPack na SpringOne 2GX: um framework pouco falado aqui no Brasil e que vale muito à pena conhecer – http://www.infoq.com/presentations/ratpack-2015

Três excelentes apresentações sobre Grails na InfoQ norte-americana

Sugestão de Rodrigo Muller

Restfull Grails – http://www.infoq.com/presentations/grails-3-rest

Grails 3.x inside and out – http://www.infoq.com/presentations/grails-3-x-inside

Microservice Architecture with Grails – http://www.infoq.com/presentations/microservices-grails-2015

IntelliJ IDEA 15 liberado – com suporte a Grails 3

Mais detalhes neste vídeo: https://www.youtube.com/watch?v=7FiOmtfbOSI

Entenda o compilador do Groovy

Deep dive into the Groovy compiler – by Cédric Champeau – http://melix.github.io/s2gx-deepdive-groovy-compiler

Debug com Groovy via linha de comando

How to Debug a Groovy Script From Shell – by Sandra Parsick – http://blog.sandra-parsick.de/2015/11/02/how-to-debug-groovy-script-from-shell