我有一个应用程序存在很多内存泄漏。例如,如果我打开并关闭视图10次,我的内存消耗会上升,因为视图没有完全清理干净。这些就是我的内存泄漏。从测试驱动的角度,我想编写一个测试来证明我的内存泄漏,并在修复了内存泄漏后进行断言。这样,我的代码不会在以后出现问题。简而言之:
是否有一种方法可以通过单元测试来断言我的代码没有内存泄漏?
例如,我可以像这样做:
objectsThatShouldNotBeThereCount = MemAssertion.GetObjects<MyView>().Count;
Assert.AreEqual(0, objectsThatShouldNotBeThereCount);
我对性能调优不感兴趣。我使用Ants分析器(我非常喜欢)但也想编写测试来确保“泄漏”不会再次出现。
我正在使用C# / Nunit,但对任何人在这方面的理念都很感兴趣...