QTestLib 框架提供了一个简单易用的单元测试框架,需要在工程文件中添加Qt+=testlib。先看一个简单的例子 :
此外,Qt还提供了以下四个会被自动调用的private slot:
initTestCase():在测试开始前被调用
cleanupTestCase():在测试结束后被调用
init():每个测试函数执行前被调用
cleanup():每个测试函数执行后被调用
测试完成后输出的结果如下所示:
为了测试GUI组件 ,可以使用诸如QTest::keyClick()函数,通过内部事件传递,来模拟本地窗口系统的事件。例如:
最后看看如何测试benchmark :
得到如下输出:
该输出表示测试共进行了65536次,共耗时41毫秒,每次测试的平均时间为0.00062毫秒。