我需要在Qt中爲我的學校項目做一些單元測試,儘管我已經閱讀了Qt教程,但我無法弄清楚我該如何編寫這樣的測試。我提到的教程中顯示的所有測試都涉及內置方法。我應該如何編寫自定義類單元測試說這是最簡單的I類有:用QTestLib測試我的課程
task.h
#ifndef TASK_H
#define TASK_H
#include <QDateTime>
#include <QTime>
class Task
{
private:
bool ifDone;
QString name;
QString description;
QDateTime *startTime;
QTime *start;
QDateTime *endTime;
QTime *end;
bool neededReminder;
QDateTime *reminderTime;
public:
Task(QString _name, QString _description, QDate *dayClicked,
QTime *_startTime, QTime *_endTime, bool reminder);
QString toString();
};
#endif // TASK_H `
task.cpp
#include "task.h"
Task::Task(QString _name, QString _description, QDate *dayClicked,
QTime *_startTime, QTime *_endTime, bool reminder)
{
ifDone = 0;
name = _name;
description = _description;
start = _startTime;
end = _endTime;
startTime = new QDateTime(*dayClicked, *start);
endTime = new QDateTime(*dayClicked, *end);
neededReminder = reminder;
}
QString Task::toString() {
QString task;
task.append(this->name);
task.append(" ");
task.append(this->start->toString("HH:mm"));
task.append(" - ");
task.append(this->end->toString("HH:mm"));
return task;
}
我嘗試#包括這個類測試類,以及添加.h和.cpp文件的項目,我沒有設法做任何事情。任何人都可以爲上面的類寫一些樣本測試方法(對於toString方法和構造函數),這樣我就可以繼續進行其他工作。提前致謝。
一切都在這裏:http://qt-project.org/doc/qt-4.8/qtestlib-tutorial.html – Mitch
正如我上面說我已閱讀本教程,但我不知道如何引用它涉及到非標準庫的方法。試圖將頭文件包含到測試文件中會給我一個錯誤,只會將類文件添加到項目結果中。 – jahsiotr
第一個代碼片段告訴你如何「包含」頭文件,如果這就是你的意思?還有一個附加的'.pro'文件,告訴你需要用'CONFIG'變量添加什麼。 – Mitch