Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: Proger от Июнь 20, 2010, 22:14



Название: Не создается Unit-тест
Отправлено: Proger от Июнь 20, 2010, 22:14
Доброго времени суток.
Мне необходимо написать небольшую библиотеку на С++. Для её реализации я решил воспользоваться Qt Creator и прикрутить к ней Unit-тесты.
Но примеры из книг и гугл не помогли мне сделать работающий Unit-тест.

Вот файл конфигурации моего проекта
Код:
# -------------------------------------------------
# Project created by QtCreator 2010-06-20T20:42:15
# -------------------------------------------------
QT += testlib
QT -= gui
CONFIG += qtestlib
TARGET = CmdlParser
TEMPLATE = lib
DEFINES += CMDLPARSER_LIBRARY
SOURCES += cmdlparser.cpp \
    cmdlkey.cpp \
    exception.cpp \
    cmdlkeytest.cpp
HEADERS += cmdlparser.h \
    cmdlkey.h \
    exception.h

А вот файл с кодом для тестирования:

Код
C++ (Qt)
 
#include <QtCore>
#include <QTest>
#include "cmdlkey.h"
 
class TestCmdlKey : public QObject {
   Q_OBJECT
private slots:
   void cmdlKeyCreation();
};
 
 
void TestCmdlKey::cmdlKeyCreation() {
 
   try {
       CmdlKey key("", "", "", "");
       QFAIL("Wrong params: expecting exception");
   }
   catch (ExceptiongWrondKeyParams &exp) {
       ;
   }
   catch (...) {
       QFAIL("Wrond exception catched");
   }
 
}
 
QTEST_MAIN(TestCmdlKey)
#include "cmdlkeytest.moc"
 
 

Вот тут: http://doc.trolltech.com/4.1/qtestlib-tutorial1.html написано что в результате всех этих манипуляций должен появится исполняемый файл для тестирования, его то и нужно запустить.

Но в результате появляется только .so файл.
Может быть это из-за того, что я при создании проекта выбрал создание библиотеки, а не исполняемого файла?


Название: Re: Не создается Unit-тест
Отправлено: lit-uriy от Июнь 20, 2010, 22:45
>>Может быть это из-за того, что я при создании проекта выбрал создание библиотеки, а не исполняемого файла?
именно так


Название: Re: Не создается Unit-тест
Отправлено: Proger от Июнь 20, 2010, 22:54
А как это можно исправить, не пересоздавая проект?
То есть как получить библиотеку с Unit-тестами?