Code Digger - Analyzes possible execution paths through your .NET code
Code Digger 是精簡版的 Pex,其內部還是使用 Pex 的程式碼分析引擎,能將有意義的參數的抓出,幫助我們更了解程式,並找到可能的淺在問題。目前該擴充套件支援 Visual Studio 2010 以後的版本 (Visual Studio 2012、 Visual Studio 2013),Visual Studio 2010 以前我們可以改使用功能更為強大的 Pex。
Code Digger 在設立之初只支援 Protable Class Library ,故非 Protable Class Library 的專案在使用時會看到像下面這樣的訊息框。
{% img /images/posts/CodeDigger/1.png %}
Code Digger 的功能也無法使用。
但在某一版後,Code Digger 能在 Options 那邊將這限制關閉。只要開啟 Options 對話框,切換至 Pex/General
頁籤,將 Code Digger
群組下的 DisableCodeDiggerPortableClassLibraryRestriction
設定為 True 就可以了。
{% img /images/posts/CodeDigger/2.png %}
使用時,我們只要在要分析的方法中按下滑鼠右鍵,在彈出的滑鼠右鍵快顯選單中選取 Generate Inputs / Outputs Table
選單選項。
{% img /images/posts/CodeDigger/3.png %}
接著會彈出 Code Digger Analytics 對話框,詢問是否同意 Code Digger 收集使用的資訊,這邊請視個人需求下去勾選就好,若有需要後續都可以至 Options 內做修改。
{% img /images/posts/CodeDigger/4.png %}
點擊 OK
按鈕將之關閉,分析的結果就會在 Inputs / Outputs
工具視窗中顯示。
{% img /images/posts/CodeDigger/5.png %}
可以在這邊清楚的看到帶入的值、方法的回傳值、是否有例外、以及錯誤訊息…等等。可藉由這些資訊判定該方法是否有可能造成不如我們預期的結果。