我的問題集中在如果我的設置目前正在遵循有關使用UI驗證測試的BDD的最佳實踐方法。我使用WatiN和SpecFlow來構建我的UI驗收測試,並將我的應用程序部署到AppHarbor(一個雲平臺作爲.NET應用程序的服務)。 AppHarbor在部署時運行您的單元/集成測試,並且只有在您的測試通過時纔會將您的網站推向市場。於是,我開始通過寫一個基本失敗的測試如下:使用WatiN和SpecFlow的UI組件的BDD
Scenario: Navigation to homepage
When I navigate to/
Then I should be on the application homepage
與這個測試相關的步驟,使用華廷打開瀏覽器並驗證視圖的標題屬性設置爲「歡迎」。我正在檢查環境,以決定使用WatiN瀏覽器測試哪些URL。例如,如果在開發中導航到「http:// localhost:49641 /」家。否則,請導航至「http://myappharborapp.com/」。
我的問題是,如果您是第一次部署此應用程序,頁面或視圖實際上不存在,因此測試失敗(因爲該網站還沒有生效)。這也會失敗,例如我以後會添加一個「關於」頁面視圖並首先編寫一個失敗的測試。當我推送更新時,測試將失敗,因爲「關於」頁面尚不存在。
那麼我的問題是:我沒有遵循關於如何設置UI測試的最佳實踐?應該如何設置這些測試以便它們在任何環境中通過?
任何洞察力非常感謝!
感謝您的回覆布魯斯。我會給這個實現一個鏡頭,看起來它應該爲我的目的工作。 – AngelCabo 2011-02-03 15:31:07