Я потратил полдня, пытаясь заставить работать модульный тест ASP.NET, как описано в Блог Алана по разработке . У меня не VS2008, а VS2010 с SP1 и Resharper 5.1, и, что бы я ни пытался, я просто сталкиваюсь с разными видами ошибок.
Когда я добавляю тестовый проект с методом тестирования следующим образом и указываю .NET 4 в качестве целевой платформы, я сталкиваюсь с исключением
Обновлено, чтобы показать более подробную информацию об исключении
"Тестовый адаптер« WebHostAdpater »выдал исключение при выполнении теста« TestMethod1 ». Не удалось правильно настроить веб-сайт; сбой получения информации о процессе ASP.NET. Запрос 'http://localhost:49676/VSEnterpriseHelper.axd' вернул ошибка: удаленный сервер возвратил ошибку: (500) Внутренняя ошибка сервера ... "
[TestMethod]
[HostType( "ASP.NET" )]
[UrlToTest( "http://localhost:49676/Default.aspx" )]
[AspNetDevelopmentServerHost( @"C:\...\Projects\ProjectX\ProjectX\", "/Default.aspx") ]
public void TestMethod1()
{
}
Я выполнил многочисленные поиски в Интернете относительно этого сообщения об ошибке, но так и не нашел решения - я попытался добавить раздел, чтобы всем пользователям был разрешен доступ к "VSEnterpriseHelper.axd", который также упоминается в сообщении об ошибке. , но это не помогло.
Попытка установить целевую платформу тестового проекта на .NET 3.5 также не помогает и возвращает ту же ошибку.
Во время игры с различными настройками я также получаю сообщение об ошибке, что сборка "Microsoft.VisualStudio.QualityTools.CommandLine" не может быть загружена, даже если я добавил правильную версию (с правильным токеном открытого ключа) для справки.
Может быть, комбинация вещей (ReSharper, целевая платформа .NET, ...) все портит, но я также пытался отключить модульное тестирование ReSharper, так что MSTest будет использоваться, к сожалению, безрезультатно.
Описание в блоге Алана кажется довольно простым, но оно не хочет работать для меня.
Обновление 2
Я также пытался запустить примеры проектов со страницы Алана в VS2008, но ошибка все та же, что и в VS2010 SP1.
Обновление 3
Все еще не повезло, но я добавил файл Microsoft.VisualStudio.Enterprise.AspNetHelper.dll (находится в % PROGRAMFILES% \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PrivateAssemblies ) в файл web.config как ConfigurationErrorException в журнале событий Windows указывает, что этот файл не найден:
<dependentAssembly xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentityVersion name="Microsoft.VisualStudio.Enterprise.AspNetHelper" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<codeBase version="10.0.0.0" href="file:///C:/Program%20Files%20(x86)/Microsoft%20Visual%20Studio%2010.0/Common7/IDE/PrivateAssemblies/Microsoft.VisualStudio.Enterprise.AspNetHelper.dll" />
</dependentAssembly>
Это исправило проблему с AspNetHelper.dll, но я получаю то же сообщение об ошибке для AspNetAdatpter , но изменение web.config таким же образом не работает, так как ошибка сохраняется. В Visual Studio я также вижу, что (когда я пытаюсь добавить запись обработчика, как показано ниже), часть QualityTools.HostAdapters.ASPNETAdapter отображается красным, указывая во всплывающей подсказке «Не удается разрешить символ« QualityTools » «:
<add name="HostAdapter" verb="GET" path="ASPNETAdapter" type="Microsoft.VisualStudio.QualityTools.HostAdapters.ASPNETAdapter, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
Это все большой беспорядок, и кажется, что я полностью сбился с пути, почему кажется невозможным запускать модульные тесты ASP.NET в VS2010? Нет ли еще кого-нибудь, кто сталкивался бы с такими же проблемами (или, по-другому, задать вопрос, есть ли кто-нибудь, кто может без проблем запустить модульный тест ASP.NET в VS2010)?
Все еще пытаюсь заставить вещи работать ...
Обновление 4
Все еще не повезло, я один такой? Кто может проводить такие тесты?
Конец обновления
Есть идеи, что я здесь делаю не так? Заранее спасибо за любые указатели в правильном направлении
G.