У меня очень неприятная проблема в Visual Studio. Я использую Resharper и пишу тесты в Nunit.
Если я устанавливаю точку останова, она срабатывает, однако Step In/Over и Continue не работают, и тест никогда не завершается. Даже если я поставлю две точки останова, продолжение не приведет ко второй. Если я отлаживаю тест без точки останова, он завершается нормально.
Кроме того, часто и время от времени, когда я пытаюсь отладить тест, устанавливая точку останова, я не могу оценить содержимое переменных, но вместо этого вижу это сообщение:
Оценка функции отключена, поскольку предыдущая оценка функции рассчитана по времени вне. Вы должны продолжить выполнение, чтобы снова включить оценку функции.
Я использую Visual Studio 2010.
Пожалуйста, дайте мне знать, если у вас есть идеи, на что обратить внимание... Я прошерстил Интернет, но безрезультатно.
Буду рад предоставить дополнительную информацию, если это необходимо.
РЕДАКТИРОВАТЬ - Пример метода
Тест:
[Test]
public void OneRowAddedToSourceData() {
//Factory just returns System.Data.DataTable with correct columns.
var sourceData = new DataTableContainerFactory().GetTargetTableContainer(DataTypeNames.EventSharedEnd);
//GetRow just returns a populated row.
var row = GetRow(sourceData, 123456, 123,60, 31);
sourceData.DataTable.Rows.Add(row);
Assert.AreEqual(1, sourceData.DataTable.Rows.Count);
}
Когда я устанавливаю точку останова в операторе Assert и пытаюсь оценить таблицу данных, у меня возникает эта проблема.
ОБНОВЛЕНИЕ 2! Итак, я сузил эту проблему до отладки Resharper. Я изменил тестовый класс на MSTest, а не на NUnit, но при отладке с помощью Resharper все еще сталкивался с обеими вышеперечисленными проблемами.Однако, когда я провел тесты с помощью встроенного средства запуска тестов VS MSTest, ВСЕ проблемы исчезли!
Теперь я предпочитаю использовать NUnit и Resharper, поэтому я был бы очень рад, если бы кто-нибудь указал мне параметр, который позволит Resharper правильно выполнять отладку!