我正在使用劫持函數調用並測試預期輸出值的單元測試套件。爲單元測試編寫一個複雜的預處理器宏
正常的佈局需要一個單元測試代碼塊的每個期望值。
由於我的代碼使用了大量的枚舉,我想用一些for循環/宏魔法自動執行自動測試,並且我正在尋找一些寫它的建議。
下面是測試代碼塊,我需要重複x次:
START_TEST("test_CallbackFn");
EXPECTED_CALLS("{{function1(param_type)#default}{function2(param_type)#default}}");
CallbackFn();
END_CALLS();
END_TEST();
現在,這裏是我會設想發生的歷史
for (int i = 0; i < 10; i++)
{
RUN_TEST(i)
}
現在,我想用我上面提到的代碼來定義RUN_TEST,除了我需要替換字符串默認與當前值我。拋出我的是現有的EXPECTED_CALLS宏中存在的引號和#。
同意,我們使用python從配置文件中生成大量的鍋爐板C代碼 - 我們現在可以使用模板完成所有工作,但很高興能夠看到代碼是什麼實際上在消失到編譯器之前生成 – 2010-03-25 15:50:06