2012-02-03 35 views
0

我們使用Selenium通過GUI自動執行SpecFlow執行Gherkin功能/場景。使用的Web服務器是CassiniDev,如this SO answer中所述。如何僞造一個在單獨進程中運行的被測系統的系統時間?

很多方案(又名實施例)包括邏輯等:

Given the customer does something 
When some time elapse 
Then ... 

如何一個假被測系統時間的系統,在一個單獨的過程在我們的接受/說明書通過實施例運行時,像測試如上所述? (對於在與SUT相同的進程中執行的普通單元/集成測試,使用我們自己的SystemDateTime類型來解決假系統時間問題,該類型允許我們更改Now()(公共lambda表達式)。)

+3

你沒有在你的「問題」中提出一個問題。相反,你提供了一個解決問題標題中提出的問題,這就給我們留下了0 + 1 - 1 = 0的問題來回答;-) – 2012-02-03 13:06:03

+0

問題是:「如何僞造一個系統的系統時間測試運行在一個單獨的過程?「我會將它添加到身體以增加清晰度。 – 2012-02-03 13:19:39

+2

如果您在問題的主體中重複已經解決的問題,它不會增加任何清晰度。您正在使用自己的SystemDateTime類型來解決問題。這種類型不依賴於測試運行的地方 - 那麼問題是什麼? – 2012-02-03 13:24:17

回答

0

我解決了這個問題,通過引導web應用程序來檢查是否使用假的系統時鐘。

我給web.config添加了一個標誌。如果爲true,則從環境變量讀取假日期+時間。

示例/場景簡單地將標誌和環境變量設置爲其給定步驟的一部分。

相關問題