Можно ли профилировать использование памяти модульных тестов? - PullRequest
17 голосов
/ 28 мая 2010

Я смотрю на создание некоторых модульных тестов, чтобы выяснить, протекают ли ресурсы (или нет), используя инфраструктуру модульного тестирования, которая поставляется с Visual Studio.

В настоящее время я оцениваю последнюю версию ANTS Profiler, но не могу разобраться, позволяет ли мне сделать принудительный снимок из кода (чтобы я мог сделать снимок, несколько раз запустить модульный тест) сто раз запустить принудительную сборку мусора, сделать еще один снимок и сохранить результаты для последующего анализа).

Возможно ли это сделать с помощью ANTS / Visual Studio или мне нужно изучить параметры с другими профилировщиками?

Ответы [ 4 ]

6 голосов
/ 16 апреля 2015

Вы видели dotmemory из JetBrains ?

dotMemory Unit - это среда модульного тестирования, которая позволяет вам писать тесты, проверяющие ваш код на все виды памятипроблемы.

Например:

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

2 голосов
/ 29 мая 2010

JetBrains dotTrace / dotMemory и ReSharper лучше интегрированы в модульное тестирование и профилирование.

http://www.jetbrains.com/profiler/index.html

Не уверен, что ANTS имеет такую ​​интеграцию, но вы можете проконсультироваться с предпродажами Red Gate, верно?

http://www.red -gate.com / об / all_testimonials.htm

Они ожидают, что вы позвоните им для получения дополнительной информации.

1 голос
/ 03 октября 2016

Я использую профилировщик ANTS, и что мне кажется наиболее удобным, это подключить профилировщик к выполняющемуся процессу тестирования, который может отличаться в зависимости от того, какую среду тестирования вы используете.Например, я использую Resharper, а имя образа процесса называется примерно так:

JetBrains.ReSharper.TaskRunner.CLR ...

0 голосов
/ 12 августа 2013

Для будущих читателей стоит упомянуть, что вы можете принудительно делать снимки из своего кода с помощью ANTS Memory Profiler. Вам нужно ссылаться на

RedGate.MemoryProfiler.Snapshot.dll

, который входит в каталог установки ANTS. Затем вы можете сделать снимок, позвонив

RedGate.MemoryProfiler.Snapshot. Полная информация здесь .

...