2013-07-05 47 views
2

BS Specflow,單元測試C# - 單元測試 - 如何計算代碼覆蓋

我在執行單元測試語句覆蓋,我已經確定了,如果條件下,嘗試catch塊等,我會寫的情況這將涵蓋了所有的代碼給我的單元測試100%的語句覆蓋範圍。

問題是我知道這些場景正在做100%的代碼覆蓋率,任何其他人誰將運行這些測試沒有線索多少聲明覆蓋它是提供。沒有測試結果或其他可以告訴其他關於語句覆蓋率的其他信息。

如何操作||怎麼做

+1

查找到代碼覆蓋工具......有很多可用。 (dotCover,僅僅是我碰巧用過的一個。) –

+1

或者NCover,我碰巧使用它。 – Steven

+0

這些東西適用於我的項目基礎結構,根據哪個單元測試和UI測試是解決方案的一部分 – Moon

回答

3

最好的做法(你的評論表明你應該遵循)然後將建立一個生成服務器。任何舊盒子都可以,甚至是你自己的盒子,但是在一個合理規模的企業中,一旦你證明了概念證明,確保你轉換到一個合適的盒子。

我假設您已經在您的組織中擁有版本控制,這意味着構建服務器可以在您的代碼副本上工作。

我會安裝TeamCity(其免費的20個構建配置)並使用其基於Web的界面來設置構建。您只需爲Visual Studio添加一個步驟並將其指向您的解決方案。爲NUnit添加另一個步驟,並勾選該框以獲取覆蓋率結果。

更重要的是,你還可以得到這是怎麼回事的趨勢,例如 Some stats 這個項目是UI因此,覆蓋率低,我也回滾了重新設計,沒有工作了,導致測試的下降。

有大量的TeamCity網站

細節但是看到的是保什麼代碼的最好方法必須是NCrunch爲@Steve評論。我也一直在使用它,不僅可以儘可能快地運行測試,還可以查看哪些行受到影響,但是您也獲得了非常好的測試調試支持。

Inline coverage in NCrunch

+0

您有權利,我確實有版本控制和構建服務器,請檢查您的建議。 – Moon

+0

點覆蓋是答案 – Moon

相關問題