2009-07-23 40 views
5

我在一個多開發項目和應用程序的工作是通過它傳遞的參數,如用戶登錄,他們的位置,等等。現在,當我調試啓動應用程序啓動應用程序I設置該解析輸入參數的代碼中設置斷點,我分配的用戶名變量我的用戶名等Visual Studio調試器 - 正在開發自動變量賦值

我可以硬編碼這些值,但是:

  • 我相信這是不好的做法。
  • 我擔心這個文件會被檢入到我們的VCS中,並且會產生災難性的連鎖反應。
  • 多位開發人員正在研究項目,所以對我的名字,位置分配等進行硬編碼並不是真正的選擇。
  • 我不能使文件只讀的,因爲它是積極發展,我公司不斷需要得到更新所述文件的版本。

我的問題是:

  • 是否有一個內置的方式或擴展自動分配變量在調試模式下的值。現在我突出顯示變量並輸入我的文本,這可以自動執行嗎?

在此先感謝

回答

1

當我打的情況就是這樣,我通常條件編譯和環境變量/註冊鍵的組合。您可以使用這些存儲機制來託管您的信息,而無需將其硬編碼到應用程序中。

#if DEBUG 
if (null != Environment.GetVariable("CUSTOM_INFO")) { 
    userName = Environment.GetVariable("CUSTOM_USERNAME"); 
    ... 
} 
#endif 

這樣,它不會影響任何其他開發人員。當然,除非他們想要完成同樣的事情。

0

添加到JaredPar的答覆,使課堂部分。

這將讓你保持主文件更新(即獲取檢查一個)。其他文件(包含IF DEBUG一)將本地&不會得到遏制。

希望有所幫助。

0

奇怪的問題。它早已過時,但單元測試和測試驅動開發的概念早在2009年就已確立。通過提供優秀的工具,如nunit和testdriven.net。調試器不是正確的工具,只會產生灰色頭髮。

+0

Eyeh,但是對於運行整個系統,插入值,當您去通過,測試框架往往不做爲好。或者至少我的印象是這種情況。我認爲人們可以通過條件斷點來實現這一點,但Green Hills調試器有一個「跳轉斷點」,可以讓你跳過部分代碼或設置斷點時的條件。 – 2014-02-26 02:18:38