0
我想測試(證明)我的單元測試是否實際測試它需要的一切。具體如何檢查我是否錯過了某些斷言?驗證通過打破代碼的單元測試
就拿這個代碼:
int AddPositives(int a, int b)
{
if (a > 0 && b > 0)
return a + b;
return -1;
}
而且有人寫了單元測試,像這樣:
[Test]
public void TestAddPositives()
{
Assert.AreEqual(3, AddPositives(1, 2));
AddPositives(0, 1);
}
顯然斷言在這裏錯過了,你可能趕上在代碼審查。但是,你會如何自動捕捉這個?
那麼有沒有什麼東西可以打破測試代碼的目的,以檢測缺失的斷言?檢查字節碼並更改常量並刪除代碼以檢查是否可以更改單元測試失敗的情況。
。您將不得不查看代碼,然後生成所有要測試的用例。 – Nkosi
代碼覆蓋率可能會幫助您找到代碼中未被單元測試覆蓋的點。但是,您仍然需要查看他們生成的報告。再次,這些工具只能幫助您完成審查過程。就我所知,沒有自動過程。 – Alp