<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>codificando.com &#187; tdd</title>
	<atom:link href="http://codificando.com/tag/tdd/feed/" rel="self" type="application/rss+xml" />
	<link>http://codificando.com</link>
	<description>Desenvolvimento de Software com qualidade</description>
	<lastBuildDate>Tue, 31 Jan 2012 09:49:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>JBehave Brasil &#8211; BDD em Java no nosso idioma</title>
		<link>http://codificando.com/2009/04/jbehave-brasil-bdd-em-java-no-nosso-idioma/</link>
		<comments>http://codificando.com/2009/04/jbehave-brasil-bdd-em-java-no-nosso-idioma/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 19:00:52 +0000</pubDate>
		<dc:creator>Emerson Macedo</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[bdd]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[jruby]]></category>
		<category><![CDATA[pragmatic]]></category>
		<category><![CDATA[tdd]]></category>
		<category><![CDATA[testes]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[engenharia]]></category>
		<category><![CDATA[xp]]></category>

		<guid isPermaLink="false">http://codificando.com/?p=67</guid>
		<description><![CDATA[No mês passado, resolvi aplicar BDD em um projeto Java que estava desenvolvendo. Atualmente, existem ferramentas em outras linguagens que podem ser usadas para esse fim. Por uma série de razões, resolvi usar o JBehave para resolver o meu problema &#8230; <a href="http://codificando.com/2009/04/jbehave-brasil-bdd-em-java-no-nosso-idioma/">Continue lendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>No mês passado, resolvi aplicar <a href="http://en.wikipedia.org/wiki/Behavior_Driven_Development" target="_blank">BDD</a> em um projeto Java que estava desenvolvendo. Atualmente, existem <a href="http://wiki.github.com/aslakhellesoy/cucumber/jruby-and-java" target="_blank">ferramentas</a> em <a href="http://jtestr.codehaus.org/" target="_blank">outras linguagens</a> que podem ser usadas para esse fim. Por uma série de razões, resolvi usar o <a href="http://jbehave.org/" target="_blank">JBehave</a> para resolver o meu problema nesse projeto em específico (lembre-se, não existe bala de prata). Acontece que o JBehave é todo em Inglês e não dá suporte a i18n.</p>
<p>Quando comecei a usa-lo no meu projeto, logo percebi que usar em inglês não seria legal, pois o projeto só fazia sentido no Brasil e portanto o interessante era escrever os cenários em português. A partir desse momento, comecei a escrever algumas classes pra fornecer esse suporte. Felizmente, as classes <a href="http://jbehave.org/javadoc/latest/core/org/jbehave/scenario/Scenario.html">Scenario</a> e <a href="http://jbehave.org/javadoc/latest/core/org/jbehave/scenario/steps/Steps.html" target="_blank">Steps</a> permitem fácil extensão para resolver esse problema. Após as modificações necessárias, o arquivo de cenário passou a se chamar <strong>nome.cenario</strong> e o texto no arquivo ficou da seguinte forma:</p>
<pre class="brush: xml; title: ;">

Como um Bom testador
Eu quero testar todo meu sistema
Para garantir a qualidade

Cenário: Nome em português do Brasil

Dado que eu quero rodar o Jbehave em português do Brasil
Quando eu usar o meu idioma
E estiver testando
Então tudo deve funcionar
E eu sou feliz
</pre>
<p>Feito isso, achei legal disponibilizar uma biblioteca para que outros desenvolvedores que precisem usar o <a href="http://jbehave.org/" target="_blank">JBehave</a> no nosso idioma possam faze-lo de forma trivial. Nesse momento nasceu o projeto <a href="http://github.com/emerleite/jbehave-br" target="_blank">jbehave-br</a>, extraido desse projeto e disponibilizado no GitHub <a href="http://github.com/emerleite/jbehave-br" target="_blank">aqui</a>. O projeto é muito simples e pequeno, com o objetivo de resolver especificamente esse problema e nada mais.</p>
<p>[UPDATE] O Jbehave agora suporta internacionalização e refatorei essa biblioteca para se aproveitar disso. Está totalmente compatível com a versão 2.5[/UPDATE]
<p><font color="#B4B4B4" size="-2">Post Footer automatically generated by <a href="http://www.freetimefoto.com/add_post_footer_plugin_wordpress" style="color: #B4B4B4; text-decoration:underline;">Add Post Footer Plugin</a> for wordpress.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://codificando.com/2009/04/jbehave-brasil-bdd-em-java-no-nosso-idioma/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Assine seus códigos</title>
		<link>http://codificando.com/2009/02/assine-seus-codigos/</link>
		<comments>http://codificando.com/2009/02/assine-seus-codigos/#comments</comments>
		<pubDate>Tue, 10 Feb 2009 19:26:21 +0000</pubDate>
		<dc:creator>Emerson Macedo</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[engenharia]]></category>
		<category><![CDATA[tdd]]></category>
		<category><![CDATA[testes]]></category>

		<guid isPermaLink="false">http://codificando.com/?p=58</guid>
		<description><![CDATA[Quem nunca chegou numa empresa ou projeto, deu de cara com um código horroroso e logo disse: Que droga, quem foi o infeliz que fez esse código tosco? Ou o contrário: Quem foi o cara que fez esse código maneiro? &#8230; <a href="http://codificando.com/2009/02/assine-seus-codigos/">Continue lendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Quem nunca chegou numa empresa ou projeto, deu de cara com um código horroroso e logo disse: Que droga, quem foi o infeliz que fez esse código tosco? Ou o contrário: Quem foi o cara que fez esse código maneiro?</p>
<p>Essas situações são muito frequentes, principalmente a primeira, com códigos fedorentos. Por isso, eu adoto uma postura: Sempre assino meus códigos.</p>
<p>O que seria assinar o código? Bem, assinar o código é aquela simples documentação que vem logo acima do arquivo, como por exemplo em Java, usando o famoso javadoc:</p>
<pre class="brush: java; title: ;">
package xpto;
import x;
/**
* @author Emerson Macedo
*/
public class Abc {
// ...
}
</pre>
<p>Assinar o código pode parecer meio arrogante mas o objetivo não é esse. O propósito de <a href="http://codificando.com/2009/01/15/os-5-niveis-do-desenvolvedor-nos-testes-automatizados/"><img class="alignright" src="http://codificando.com/wp-content/uploads/2009/02/assinando.jpg" alt="" /></a>assinar o código e se expor. Quando você assina alguma coisa, explicitamente está colocando a sua autoria naquilo, ficando sujeito tanto a críticas, quanto a elogios.</p>
<p>Quando algum pintor faz um quadro, ele sempre vem assinado em alguma parte. Dificilmente o autor dessa obra de arte vai terminar esse quadro antes que ele tenha certeza que está com ótima qualidade (pelo menos na visão dele).</p>
<p>E no que isso implica? Isso implica que você (1) vai pensar 2 vezes antes de colocar aquela habitual gambiarra no seu código, (2) vai pensar bem antes de <a href="http://codificando.com/2009/01/15/os-5-niveis-do-desenvolvedor-nos-testes-automatizados/">concluir alguma coisa sem devidos testes automatizado</a>s e (3) vai ser muito mais responsável com o código que você está desenvolvendo.</p>
<p><strong>Conclusão</strong></p>
<p>Como qualquer desenvolvedor, já desenvolvi códigos ruins em diversos projetos pelos quais passei. Aquele que nunca desenvolveu código fedorento que atire a primeira pedra. Hoje em dia, <a href="http://codificando.com/2008/09/11/codigo-do-panico/">não desprezo a qualidade daquilo que desenvolvo</a>. Acredito muito que quando assinamos nossos códigos e nos damos conta que outro desenvolvedor/programador irá utiliza-lo futuramente, isso gera um maior cuidado com a qualidade.
<p><font color="#B4B4B4" size="-2">Post Footer automatically generated by <a href="http://www.freetimefoto.com/add_post_footer_plugin_wordpress" style="color: #B4B4B4; text-decoration:underline;">Add Post Footer Plugin</a> for wordpress.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://codificando.com/2009/02/assine-seus-codigos/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Os 5 níveis do desenvolvedor nos testes automatizados</title>
		<link>http://codificando.com/2009/01/os-5-niveis-do-desenvolvedor-nos-testes-automatizados/</link>
		<comments>http://codificando.com/2009/01/os-5-niveis-do-desenvolvedor-nos-testes-automatizados/#comments</comments>
		<pubDate>Thu, 15 Jan 2009 16:40:53 +0000</pubDate>
		<dc:creator>Emerson Macedo</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[cursos]]></category>
		<category><![CDATA[engenharia]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[tdd]]></category>
		<category><![CDATA[testes]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[xp]]></category>

		<guid isPermaLink="false">http://codificando.com/?p=57</guid>
		<description><![CDATA[Alguns acontecimentos me fizeram refletir um pouco sobre a relação entre o desenvolvedor de software e os testes automatizados. Muitas vezes parei pra explicar pra vários colegas de trabalho sobre a importância do assunto, fiz pair-programmming pra ensinar como se &#8230; <a href="http://codificando.com/2009/01/os-5-niveis-do-desenvolvedor-nos-testes-automatizados/">Continue lendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Alguns acontecimentos me fizeram refletir um pouco sobre a relação entre o desenvolvedor de software e os <a href="http://pt.wikipedia.org/wiki/Testes_automatizados">testes automatizados</a>.</p>
<p>Muitas vezes parei pra explicar pra vários colegas de trabalho sobre a importância do assunto, fiz <a href="http://www.improveit.com.br/xp/praticas/programacao_par">pair-programmming</a> pra ensinar como se faz, em fim, investi muito tempo pra ajudar diversas pessoas com isso. Por incrível que pareça, tem muiiiiiita gente que ainda não entendeu muito bem. Portanto, resolvi classificar a relação entre o desenvolvedor e os <a href="http://pt.wikipedia.org/wiki/Testes_automatizados">testes automatizados</a> em 5 níveis.</p>
<p>São eles:</p>
<ol>
<li><strong>Ignorante:</strong> Esse é o nível no qual o desenvolvedor não sabe direito o que são testes automatizados ou sequer ouviu falar sobre o assunto (acredite, ainda tem gente assim em pleno 2009).</li>
<li><strong>Indiferente: </strong>Nesse nível, o desenvolvedor já sabe o que é, mas acha que essa prática/tecnica não serve pra nada. Apenas toma tempo e atrasa a entrega do produto que está sendo desenvolvido. A sensação dele é que sem os testes a entrega seria mais rápida (e a quantidade de bugs tb vão aparecer mais rápido).<img class="alignright" src="http://codificando.com/wp-content/uploads/2009/01/escada.jpg" alt="" width="275" height="201" /></li>
<li><strong>Prequiçoso</strong>: Nesse nível eu encontro muita gente. É nesse nível onde a ficha caiu mas o camarada não toma coragem pra aprender a fazer os testes automatizados. Ainda existe o medo de perder muito tempo com essa prática e a preguiça impera, impedindo o progresso.</li>
<li><strong>Decidido: </strong>Esse pra mim é o nível mais importante. É nessa hora que o desenvolvedor se dá conta que não dá mais pra desenvolver software sem testes automatizados. É nessa hora que o cara pensa: &#8220;como eu pude desenvolver sem testes até hoje?&#8221;. É nesse momento que inicia-se o aprendizado.</li>
<li><strong>Profissional: </strong>Nesse nível, o desenvolvedor já não se sente mais confortável desenvolvendo sem testes automatizados. Desenvolver sem testes o incomoda profundamente. Nesse momento o mesmo está maduro quanto a importância dos testes e a aplicação na prática. O mesmo começa a se tornar um evangelista para os demais desenvolvedores e sempre que pode, fala sobre o assunto. Nesse momento o desenvolvedor pode realmente dizer que é um profissional, pois hoje em dia não se admite mais desenvolver sem ter testes automatizados que garantam qualidade daquilo que se desenvolve.</li>
</ol>
<p><strong><em>Em qual nível você está?</em></strong>
<p><font color="#B4B4B4" size="-2">Post Footer automatically generated by <a href="http://www.freetimefoto.com/add_post_footer_plugin_wordpress" style="color: #B4B4B4; text-decoration:underline;">Add Post Footer Plugin</a> for wordpress.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://codificando.com/2009/01/os-5-niveis-do-desenvolvedor-nos-testes-automatizados/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Artigo na Revista Visão Ágil edição 5</title>
		<link>http://codificando.com/2008/11/artigo-na-revista-visao-agil-edicao-5/</link>
		<comments>http://codificando.com/2008/11/artigo-na-revista-visao-agil-edicao-5/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 18:09:03 +0000</pubDate>
		<dc:creator>Emerson Macedo</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[cursos]]></category>
		<category><![CDATA[gestão]]></category>
		<category><![CDATA[pragmatic]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[tdd]]></category>
		<category><![CDATA[testes]]></category>
		<category><![CDATA[xp]]></category>

		<guid isPermaLink="false">http://codificando.com/?p=46</guid>
		<description><![CDATA[A Revista Visão Ágil, que sempre apresenta artigos muito interesantes, publicou este mês de outubro a edição número 5 com um artigo meu sobre Os 7 Pecados Capitais de Um time Ágil. O editorial está de parabéns pelo trabalho que &#8230; <a href="http://codificando.com/2008/11/artigo-na-revista-visao-agil-edicao-5/">Continue lendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.visaoagil.com/downloads/edicoes/VA_05.pdf" target="_blank"><img class="alignright size-full wp-image-48" title="va_05" src="http://codificando.com/wp-content/uploads/2008/11/va_05.jpg" alt="Visão Ágil 5" width="150" height="212" /></a>A  <a href="http://www.visaoagil.com/" target="_blank">Revista Visão  Ágil</a>, que sempre apresenta artigos  muito interesantes, publicou este mês de outubro a <a href="http://visaoagil.wordpress.com/2008/10/16/visao-agil-edicao-05/">edição número 5</a> com um <a href="http://www.visaoagil.com/downloads/edicoes/VA_05.pdf" target="_blank">artigo meu sobre  Os 7 Pecados Capitais de Um time  Ágil</a>.  O editorial está de parabéns pelo trabalho que fizeram. Realmente a revista ficou ótima.</p>
<p>O Artigo fala um pouco sobre erros comuns de times ágeis. Isso inclui não somente o time, mas P.Os, Scrum Masters e todos os demais envolvidos. Vale a pena conferir.</p>
<p>Os demais artigos também são de excelente qualidade e a leitura dos mesmos é extremamente recomendada.</p>
<p>Meus sinceros agradecimentos ao <a href="http://manoelpimentel.blogspot.com/" target="_blank">Manoel Pimentel</a> e <a href="http://www.fratech.net/" target="_blank">Felipe Rogrigues</a>.
<p><font color="#B4B4B4" size="-2">Post Footer automatically generated by <a href="http://www.freetimefoto.com/add_post_footer_plugin_wordpress" style="color: #B4B4B4; text-decoration:underline;">Add Post Footer Plugin</a> for wordpress.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://codificando.com/2008/11/artigo-na-revista-visao-agil-edicao-5/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

