Первый тест NUnit очень медленный с Entity Framework в средстве выполнения тестов Resharper

Есть ли какое-нибудь решение проблемы медлительности первого теста NUnit при использовании Entity Framework 4.1?

Я обнаружил, что для первого теста требуется около 10 секунд, остальные мои тесты выполняются за 0,01 секунды (согласно параметру Resharper Show Time)

Если я запускаю тесты с использованием графического интерфейса NUnit, снова первый тест занимает 10 секунд. секунд, но если я перезапущу весь набор тестов менее чем за 0,5 секунды ... пока я не перекомпилирую решение

У меня также есть тесты NUnit для службы WCF, размещенной в IIS , который вызывает EF, и первый завершается примерно через 3 секунды. Затем, если я перезапущу тесты, это уменьшится до 1 секунды и, как и ожидалось, при перекомпиляции первый раз вернется к 3 секундам.

Но исходные тесты NUnit, которые относятся к библиотеке классов с методами, вызывающими EF, являются всегда около 10 секунд, т.е. без уменьшения времени

Хорошо, я понимаю, что IIS «что-то делает» [что?] , но в обоих случаях я использую NUnit для выполнения вызовов ... почему один 10+ секунд для первого вызова, второй - 3 секунды, а затем 1 секунда при последующих вызовах ??

И, чтобы действительно запутать меня, я написал простое консольное приложение, которое вызывает один из EF с использованием методов в тестируемом классе, и он выполняется за 1 секунду.

ОБНОВЛЕНИЕ ... те же тесты, что и тесты MSTest, завершают первый тест примерно за 3,5 секунды, что сравнимо с первым запуском теста в средстве выполнения NUnit GUI, поэтому проблема, похоже, заключается в средстве выполнения тестов Resharper для NUnit в Visual Studio

ОБНОВЛЕНИЕ 2 ... да, похоже, проблема заключается в средстве выполнения тестов Resharper. TestDriven.NET и Visual Nunit 2010 работают быстрее.

ОБНОВЛЕНИЕ 3 ... и теперь оно регистрируется с помощью JetBrains как проблема

7
задан SteveC 17 January 2012 в 17:32
поделиться