2009-04-24 71 views
2

我使用boost.test庫爲我的應用程序編寫單元測試。緩慢編譯基於增強的單元測試套件

問題是,當一個包含測試套件的特定* .cpp文件增長到特定大小時,該文件的編譯變得非常緩慢。

我使用BOOST_AUTO_TEST_CASE宏定義測試用例。

升壓版本1.34.1是

構建ENV是自動工具+ GCC 4.3的Fedora 9

下,我將十分感謝,如果有人會指出,這種行爲的可能原因。

+0

您是使用源代碼還是預建的庫? – dirkgently 2009-04-24 09:56:21

+0

由什麼因素變得更慢,以及突然如何?是「增加一個測試用例,整個測試用例慢10倍」,還是更像「每個測試用例開始增加的額外時間」? – 2009-04-24 10:10:15

回答

1

您可能會耗盡物理內存,並且系統開始比交換(文件/分區)更加集中地比正常(顛簸)。

1

試圖找出發生了什麼的一種方法是使用gcc選項-Q並查看正常情況和極其緩慢情況之間的區別。

1

您可以拆分相同的測試套件以跨越多個測試文件。這應該可以緩解你的問題。