Выполняйте мониторинг использования памяти .NET с помощью юнит-тестов

dotMemory Unit — это фреймворк юнит-тестирования, который позволяет писать тесты, проверяющие код на все виды проблем, связанных с памятью. Теперь вы можете расширить возможности NUnit, MSTest или другого фреймворка юнит-тестирования для .NET, добавив в него функциональность профилировщика.

Идеально подходит для любого рабочего процесса: интегрируется с Visual Studio, работает с автономными инструментами запуска юнит-тестов, готов к работе в окружении непрерывной интеграции. И последнее, но немаловажное: dotMemory Unit бесплатен.

Скачать пакет NuGet
Бесплатный пакет NuGet
Скачать zip
Бесплатный автономный инструмент для запуска тестов

Эффективное использование памяти в .NET-приложениях с помощью dotMemory Unit

Проверяйте наличие объектов

Проверяйте наличие объектов

Проверка на наличие объектов определенного типа является основным способом находить утечки памяти в вашем коде. С помощью dotMemory Unit вы можете определить набор объектов, используя практически любое условие, вычислить их количество и размер, а также использовать эту информацию в своих выводах.

Проверьте трафик памяти

Проверьте трафик памяти

Если нужно просто оценить объем памяти, выделенной в рамках теста, вы можете использовать атрибут AssertTraffic. Этот удобный атрибут позволяет отфильтровать данные трафика по типу объекта, интерфейсу или пространству имен.

Сравнение снэпшотов

Сравнение снэпшотов

Как и в профилировщике dotMemory вы можете использовать контрольные точки не только для получения выводов об объеме трафика, но также для разнообразных операций по сравнению снэпшотов.

Продолжение анализа в dotMemory

Продолжение анализа в dotMemory

Некоторые проблемы с памятью бывает необходимо исследовать в dotMemory вручную. Просто установите правила для определения таких случаев, — рабочее пространство для дальнейшего анализа в dotMemory будет создано автоматически.

Попробуйте dotMemory Unit

  1. Можно установить в ваш тестовый проект в виде пакета NuGet и использовать в Visual Studio.
  2. Можно использовать с автономными инструментами запуска юнит-тестов.
  3. Готов к встраиванию в сборки непрерывной интеграции.
  4. Работает с большинством .NET-фреймворков юнит-тестирования, включая MSTest и NUnit.
Скачать пакет NuGet
Бесплатный пакет NuGet
Скачать zip
Бесплатный автономный инструмент для запуска тестов