Dunit
A Dunit é uma framework de testes específica para Dephi. Ela foi inspirada na JUnit, framework de testes voltado para Java, desenvolvido por Kent Beck (olha ele aí de novo)e Erich Gamma. No entanto a ferramenta evoluiu e hoje usa muito mais o potencial da IDE Delphi visando ser cada vez mais útil para os utilizadores do Delphi.
Como vamos tratar de Refactoring e Desenvolvimento Orientado a Testes, faz necessário utilizar uma ferramenta facilite a execução desses testes. Por isso vamos iniciar com a instalação da Dunit.O exemplo que será descrito a seguir está usando o Delphi XE3, mas a instalação pode ser realizada em qualquer versão do Delphi.
Link para Download da DUnit: http://sourceforge.net/projects/dunit/
1. Descompacte o arquivo dunit-9.0.3.zip em uma pasta qualquer.
2. Adicionar a pasta “src” na library do Delphi.
3. Por incrível que pareça, está instalado!
Agora vamos testar a framework.
Crie um novo projeto no Delphi. Feche a unit1 sem salvar. Salve o que restou, e nomeie como Projeto1Teste.dpr.
Adicione uma nova unit, através do menu File| New| Unit. Este e o arquivo que conterá o caso de teste, portanto nomeie-o como Projeto1CasoTeste. Na cláusula uses da interface (acima da palavra interface) adicione a referência a TestFramework. (uses TestFramework).
Declare um classe com o nome PrimeiroCasoTeste descendendo de TTestCase. Acrescente a classe um método PrimeiroTeste, conforme abaixo, atente a seção intialization:
unit Projeto1CasoTeste;
interface
uses TestFramework;
type
TPrimeiroCasoTeste = class(TTestCase)
published
procedure PrimeiroTeste;
end;implementation
{ TPrimeiroCasoTest }
procedure TPrimeiroCasoTeste.PrimeiroTeste;
begin
Check(1+1=2, 'Falha matemática catastrófica!');
end;
initialization
Agora vamos testar a framework.
Crie um novo projeto no Delphi. Feche a unit1 sem salvar. Salve o que restou, e nomeie como Projeto1Teste.dpr.
Adicione uma nova unit, através do menu File| New| Unit. Este e o arquivo que conterá o caso de teste, portanto nomeie-o como Projeto1CasoTeste. Na cláusula uses da interface (acima da palavra interface) adicione a referência a TestFramework. (uses TestFramework).
Declare um classe com o nome PrimeiroCasoTeste descendendo de TTestCase. Acrescente a classe um método PrimeiroTeste, conforme abaixo, atente a seção intialization:
unit Projeto1CasoTeste;
interface
uses TestFramework;
type
TPrimeiroCasoTeste = class(TTestCase)
published
procedure PrimeiroTeste;
end;implementation
{ TPrimeiroCasoTest }
procedure TPrimeiroCasoTeste.PrimeiroTeste;
begin
Check(1+1=2, 'Falha matemática catastrófica!');
end;
initialization
TestFramework.RegisterTest(TPrimeiroCasoTeste.Suite);
end.
Selecione o menu Project | View Source e adicione TestFramework e GUITestRunner na clásula uses.Remova o código default da aplicação e adicione o código abaixo:
program Project1Test;
uses
Vcl.Forms,
Projeto1CasoTeste in 'Projeto1CasoTeste.pas',
TestFramework,
GUITestRunner;
{$R *.res}
begin
Application.Initialize;
GUITestRunner.RunRegisteredTests;
end.
Ao executar o programa, será exibida a interface visual da Dunit, para execução de testes, conforme imagem abaixo:
Em seguida, ao clicar no ícone para execução de testes (seta verde apontada para direita) a Dunit realizará o teste descrito.
Legal !!!!!!!!!!!!!!!
ResponderExcluir