Automatizando Testes Funcionais com Selenium + Cucumber

Depois de um bom tempo sem postar, estou de volta. Início de ano é sempre assim, vamos ver se eu mantenho uma regularidade nos posts dessa vez.

Pra começar resolvi escrever sobre Testes Funcionais Automatizados + BDD. Já escrevi sobre os benefícios do BDD em outro post com uma breve overview, mas só teoria. Agora escrevo sobre como configurar um projeto Java do zero utilizando Maven + Cucumber + Selenium.

Como o objetivo é demonstrar um teste funcional automatizado rodando, o exemplo que escolhi para testá-lo foi um simples app que calcula o valor do estacionamento: Parking Calculator.

Continuar lendo Automatizando Testes Funcionais com Selenium + Cucumber

Anúncios

[EVENTO] – JavaCE Community Conference 2012.

Meus caros colegas desenvolvedores,

Estou escrevendo esse post para informá-los e convidá-los para um evento que ocorrerá aqui em Fortaleza/CE nos dias 11 e 12 de maio de 2012. Se trata do JavaCE Community Conference que está sendo encabeçado pelo pessoal da Milfont Consulting juntamente com a galera da Triadworks.

O Evento trará até nossa cidade pessoas bastante reconhecidas no mundo do desenvolvimento. O Paulo Silveira, a Loiane e o Maurício Linhares são algumas das feras que estarão palestrando para nós meros mortais.

Faça sua inscrição e garanta sua presença, pois o evento tá prometendo ser excelente! 🙂
Ah, em agosto tem o QConSP’2012 e a Caravana JavaCE vai marcar presença mais uma vez.

_

JavaCE

JavaCE Community Conference – 2012
Data: 11 e 12 de maio.
Local: Faculdade 7 de Setembro – Fortaleza/CE
Increva-se aqui!

_

QCon São Paulo – 2012
Data: 04 e 05 de agosto
Local: Espaço Fecomércio – São Paulo/SP
Inscreva-se aqui!

[Problema] Sincronizando um Bloco de Código

Olá, amigos

Há algumas semanas durante os meus estudos para a OCJP, me deparei com este problema que está no capítulo de Threads do livro da Kathy Sierra:

In this exercise we will attempt to synchronize a block of code. Within that block of code we will get the lock on an object, so that other threads cannot modify it while the block of code is executing. We will be creating three threads that will all attempt to manipulate the same object. Each thread will output a single letter 100 times, and then increment that letter by one. The object we will be using is StringBuffer. We could synchronize on a String object, but strings cannot be modified once they are created, so we would not be able to increment the letter without generating a new String object. The final output should have 100 As, 100Bs, and 100 Cs all in unbroken lines.

Continuar lendo [Problema] Sincronizando um Bloco de Código

Estudando para Oracle Certified Java Programmer 6

Olá amigos,

Recentemente tenho dedicado parte do meu tempo e retomado meus estudos para tirar minha primeira certificação que será a OCJP 6. Assim como boa parte de desenvolvedores Java que optam por tirá-la, eu optei por estudar pelo livro da Kathy Sierra: Certificação Sun para Programador Java 6.

Na minha opinião é um livro completo e que aborda todos os conteúdos que podem vir a ser cobrados na prova da Oracle. Usa uma linguagem bem fácil de entender, dá várias dicas de como se safar das temidas questões “pegadinha” e ainda contém ao fim de cada capítulo alguns exercícios no estilo da prova e ao fim ainda exibe as respostas explicando o porquê de cada uma delas estarem certas ou erradas.
Continuar lendo Estudando para Oracle Certified Java Programmer 6

Praticando Test Driven Development – TDD

Olá,

Depois de algum tempo sem postar nada, eis que vendo um probleminha no GUJ resolvi praticar um pouquinho de TDD e assim escrever um post sobre essa excelente metodologia.
Já li muito sobre o assunto e tenho até uma boa base teórica. O TDD é bem simples e fácil de entender, mas ainda não pratiquei muito codificando, confesso que por um pouco de preguiça, e com este probleminha foi uma boa oportunidade de praticar.

O problema que eu escolhi foi o cálculo do Número de Euller(e) usando a Série de Taylor dada por:
e = 1 + 1/1! + 1/2! + 1/3! + 1/4! + …

Onde teremos um valor de entrada n, que quanto maior ele for, mais aproximado ele será do número de Euller.

Primeiramente, para facilitar o cálculo da série, vamos implementar a função fatorial(n) que como sabe-se é calculada da seguinte forma:

fatorial(n): = 1, se n = 0;
                     = n * fatorial(n-1), se n > 0;
                     indefinida, c.c

Continuar lendo Praticando Test Driven Development – TDD