2017-04-19 19 views
0

對於(非迴歸)測試目的,我經常需要使DB2 LUW返回「假」當前日期。 這當然是由於依賴於當前日期/時間戳的應用程序代碼,以及在不同日期運行時的行爲不同。將DB2 LUW中的當前日期/時間戳假冒以進行測試

我們可以更改操作系統(例如Linux)的日期,因爲測試環境是隔離的,每個測試者都是專用的。

不幸的是,這並不有很大的幫助,因爲我們至少面臨兩個問題:

1)綁定程序(Cobol語言)當系統日期向後推移,給出錯誤(未找到表,...)

2)「過去」系統日期之後創建的功能也無法使用....

對於點1),我們可以設置以呈現日期,然後結合,然後再回到過去, 但對於第2點),我沒有找到解決方法。

有沒有人有這方面的經驗?包括免費或專有軟件在內的任何替代品都是受歡迎的

+0

因此,基本上你希望'CURRENT_TIMESTAMP'返回一個任意值,其餘的DB2實例根據事實上的時間戳值來運行? – mustaccio

+0

是的,也是當前日期以及依賴於當前日期的任何其他日期函數。 –

回答

0

很多年前,我們的商店購買了一種專有的工具來協助測試與2000年相關的計劃變更。

該軟件允許我們指定我們的測試JCL任意「當前」的日期和時間,使用參數「ALTDATE」和「ALTTIME」:

//STEP1 EXEC PGM=MYPGM,ALTDATE=MM/DD/YYYY,ALTTIME=HH.MM 

程序調用系統日期程序,如COBOL「 ACCEPT ... FROM DATE「或DB2」CURRENT TIMESTAMP「將根據以指定日期和時間開始的」假「系統時鐘返回值。

我相信該產品還支持使用CICS區域中的模擬時鐘來測試在線應用程序,但我可能會誤解。不幸的是,管理層決定在Y2K通過後的一段時間內停止更新產品許可證,儘管我們幾位開發人員發現它對於測試日期敏感邏輯非常有用。

雖然我不知道我們使用的產品的名稱,但Google搜索出現了DTS Software提供的名爲「Simulate 2000」的產品,它似乎具有相同的功能。

+0

對於大型機(z/OS),我確認有一些解決方案與Compuware提供的Xpeditor/Xchange類似。當使用RD&T Z(在x86平臺上模擬z/OS)時,我們也可以改變時間。我正在尋找的是開放系統(Linux,Unix和Windows)的解決方案.... –

相關問題