Instalando o GTest no Ubuntu e OSX, Framework de testes para C++

[Última atualização em 12-02-2018]

Hoje em dia não há como falar em desenvolvimento sem falar em TESTES, se você desenvolve com linguagens como Ruby, Python, Scala... já deve está familiarizado com o assunto. Mas, que tal fazer um Coding Dojo em C++.

Desenvolvido pelo Google, conheça o Framework GTest, uma ferramenta para escrever testes para C++ em uma variedade de plataformas como (Linux, Mac OSX, Windows, Cygwin, Windows CE, e Symbian). Baseado na arquitetura xUnit. Suporta testes automáticos de descoberta, um rico conjunto de assertivas, assertivas baseadas na definição do usuário, controle de testes mortos, falha fatal e não fatal, testes parametrizados por tipo ou valor, varias opções de executar testes, e geração relatório do teste para XML.

Então, veja como instalar esta incrível ferramenta no Ubuntu e no OSX e começar a fazer seus testes.
UBUNTU

1º Passo - É simples, basta instalar (no Terminal):

apt-get install libgtest-dev

 Agora, um pequeno detalhe! Por razão de uma pequena regra da definição da linguagem C++ "Definição Única de Classes" o framework não é compilado na hora da instalação, então, você mesmo deve compilar.

2º Passo - Compilar e Localizar (no Terminal):

# Ir para a sua home
cd ~
# Compilar a biblioteca
g++ -I /usr/include/gtest -I /usr/src/gtest/ -c /usr/src/gtest/src/gtest-all.cc
# Arquivar o arquivo gerado como uma biblioteca estática
ar -rv libgtest.a gtest-all.o
# Mover para um local onde o linker do GCC possa encontrar
mv libgtest.a /usr/local/lib/

OSX

1º Passo - Baixar última versão

Entre no site oficial da ferramente GTest Code, baixe a versão mais recencte, geramente está em .zip ou .tar.gz e descompacte em alguma pasta da sua preferência.

2º Passo - Compilar e Localizar (no Terminal):

# Dentro da pasta descompactada, crie um novo diretório
mkdir mybuild
# mova-se para o diretório
cd mybuild
# rode o comando de cmake
cmake -G"Unix Makefiles" ..
# rode o make
make
# e por fim
make install
# para concluir, mova a biblioteca estática para um local onde o linker possa o encontrar
mv ../libgtest.a /usr/local/lib/

Ok, agora o framework está pronto para uso, veja este exemplo:

Crie o arquivo de definição da classe: Pessoa.h


Crie o arquivo de implementação da classe: Pessoa.cpp


Crie o arquivo de testes: pessoa-teste.cpp


Para rodar este teste é simples, há apenas duas considerações a serem feitas:
1º - Caso o linker não encontre o GTeste adicione "/usr/local/lib/libgtest.a" no comando
2º - Sempre adicione a opção "-lpthread" no comando

# Makefile
all:
    gcc -c ./*.cpp
    g++ ./pessoa-teste.cpp Pessoa.o /usr/local/lib/libgtest.a -o teste.bin -O2 -g -Wall -lpthread

clean:
    rm *.o
    rm ./pessoa-teste.bin

A saída será:


 Para se aprofundar mais, visite e guarde este link : Documentação
Instalando o GTest no Ubuntu e OSX, Framework de testes para C++ Instalando o GTest no Ubuntu e OSX, Framework de testes para C++ Reviewed by AJ Alves on quinta-feira, outubro 11, 2012 Rating: 5

Nenhum comentário:

Tecnologia do Blogger.