Qt文档阅读笔记-数据驱动测试
生活随笔
收集整理的這篇文章主要介紹了
Qt文档阅读笔记-数据驱动测试
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
如果要測(cè)試多個(gè)數(shù)據(jù),可以使用下面的代碼
QCOMPARE(QString("hello").toUpper(), QString("HELLO")); QCOMPARE(QString("Hello").toUpper(), QString("HELLO")); QCOMPARE(QString("HellO").toUpper(), QString("HELLO")); QCOMPARE(QString("HELLO").toUpper(), QString("HELLO"));但是這個(gè)可讀性相對(duì)來說不高,可以增加一個(gè)私有的槽函數(shù)添加數(shù)據(jù):
class TestQString: public QObject {Q_OBJECTprivate slots:void toUpper_data();void toUpper(); };這里的數(shù)據(jù)要和測(cè)試的一樣,只要在相似的后面添加_data()。
如下:
void TestQString::toUpper_data() {QTest::addColumn<QString>("string");QTest::addColumn<QString>("result");QTest::newRow("all lower") << "hello" << "HELLO";QTest::newRow("mixed") << "Hello" << "HELLO";QTest::newRow("all upper") << "HELLO" << "HELLO"; }這里QTest::addColumn和QTest::newRow邏輯上是這樣的:
?
程序運(yùn)行截圖如下:
test2.pro
QT += widgets testlib SOURCES = testqstring.cpp INSTALLS += targettestqstring.cpp
#include <QtTest>class TestQString: public QObject{Q_OBJECTprivate slots:void toUpper_data();void toUpper(); };void TestQString::toUpper_data(){QTest::addColumn<QString>("string");QTest::addColumn<QString>("result");QTest::newRow("all lower") << "hello" << "HELLO";QTest::newRow("mixed") << "Hello" << "HELLO";QTest::newRow("all upper") << "HELLO" << "HELLO"; }void TestQString::toUpper(){QFETCH(QString, string);QFETCH(QString, result);QCOMPARE(string.toUpper(), result); }QTEST_MAIN(TestQString) #include "testqstring.moc"?
總結(jié)
以上是生活随笔為你收集整理的Qt文档阅读笔记-数据驱动测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java笔记-对tomcat进一步认识
- 下一篇: Android逆向笔记-破解某APP签名