我試圖測試一個應用程序對一天中的時間有很大的依賴性。我希望能夠執行該程序,就好像它正在正常運行(不加速)但在任意日期/時間段運行一樣。Linux上的時間虛擬化
我的第一個想法是抽象時間檢索函數調用與我自己的庫調用,這將允許我改變測試的行爲,但我想知道是否有可能沒有添加條件邏輯到我的代碼庫或建立一個測試二進制的變體。
我真正在尋找的是某種本地化的時間域,這是可能與容器(如Docker)或使用LD_PRELOAD攔截調用?
我也看到了一個補丁,使用不共享(COL_TIME)啓用時間從系統時間斷開,但它看起來並不像這讓英寸
好像是必須要解決很多問題以前有誰願意分享他們的解決方案?
感謝 AJ
什麼是你對時間的重要依賴?你有應用程序的完整源代碼嗎?它寫的是哪種語言? –
這是C++,我可以訪問整個源代碼。在代碼的許多部分中,當前日期時間正在被檢索並且需要與爲給定的測試運行提供的歷史數據同步,因此這種依賴性很強。 –