2012-09-27 64 views
1

任何人都可以指示我使用Ruby代碼檢測未使用的代碼,對象,方法,參數等的工具嗎?在Ruby代碼中查找未使用的構造的工具?

我看到nitpick但它似乎並沒有給我我想要的覆蓋範圍。我也檢查了laserreek,但他們各自的寶石似乎有問題,阻止他們運行。

我認爲在一個點上,Ruby二進制文件有一個模式,可以檢測到未使用的結構,但我似乎無法找到它。

回答

1

如果我們希望「檢測未使用的代碼」的方式有更多的上下文,這可能會有所幫助 - 您正在查看的測試的代碼覆蓋率是多少?否則,你會如何知道從運行到運行你是否碰到所有用例?或者你是否在尋找一段時間內覆蓋率的統計「熱圖」性能的原因?

在任何情況下,對於測試時的代碼覆蓋範圍,我使用SimpleCov - 它使用Ruby 1.9的內置Coverage庫,頂部有一些不錯的糖。

+0

有問題的腳本是自包含的程序,作爲一般規則。可以說,給定腳本中的方法都將在該腳本內被調用,除了用於與「外部世界」接口的腳本之外。因此,知道一個腳本是否「命中所有用例」非常簡單:要麼調用該方法,要麼不調用該方法。 –

1

你也可以使用一個突變測試器發生變異代碼。如果突變檢測儀可以在沒有檢測到的情況下刪除構建體。你發現了一個未使用的構造。

我知道紅寶石2個突變測試:

聲明,我是突變的作者。

根據您的設置,您的ruby版本,規格佈局,測試框架heckle和or mutant可以爲您完成這項工作。

在這裏你可以看到在行動突變:http://ascii.io/a/1707

相關問題