Na prática, o desenvolvimento Guiado por Testes nada mais é do que escrever um teste antes de escrever qualquer código. Mas como assim? Vamos testar o que se não tem código? Quando escrevemos um método, esperamos que esse método faça alguma coisa, em outras palavras, temos uma expectativa do que precisa ser feito antes de criar o método. Então vamos levar essa expectativa para os testes e criar um teste que inicialmente falha e em seguida o fazemos ter sucesso ao receber o resultado de um método de produção.