Multiplos arquivos de teste

Se precisar dividir os testes em vários arquivos. Por exemplo, um arquivo por classe de casos de teste, pode fazer conforme a seguir:

Suponha que agora você tem o arquivo "main.cpp" e o arquivo "tests.h", veja abaixo o conteúdo de "test.h":

tests.h
#include <xutest/xutest.h>

TEST_CASE( test1, MyTests ) {
    ASSERT_EQUALS( 1, 1, )
}

TEST_CASE( test2, MyTests ) {
    ASSERT_TRUE( true, )
}

TEST_CASE( test3, MyTests ) {
    ASSERT_NULL( nullptr, )
}

Agora vamos para o conteúdo do arquivo "main.cpp":

main.cpp
#include "tests.h"

#include <xutest/xutest.h>

int main() {
    RUN_ALL_TEST_CASES()
    return 0;
}

Perceba que o arquivo "tests.h" está sendo incluído em "main.cpp", mesmo sem ter uma de suas funções, métodos, classes, ou outro recurso diretamente chamados no arquivo "main.cpp". Isso é obrigatório. Isto é, para que as definições de casos de testes sejam encontradas, é necessária a inclusão do arquivo "tests.h".

Próxima aula

O próxima aula ensina como rodar o menu de casos de teste.