Ошибка при обработке веб-тестов, содержащих загрузку файла - PullRequest
2 голосов
/ 02 сентября 2010

У нас есть веб-приложение, разработанное с использованием MVC2.Я записываю веб-тесты для всех просмотров в нашем веб-приложении.Я использую тестовую версию VS2008, установленную на отдельной машине для этих веб-тестов.

Моя проблема в том, что мои записанные веб-тесты не отображаются для просмотра.Этот конкретный вид содержит 2 элемента управления загрузкой.

Распространенные ошибки -

  1. Запрос не выполнен: пустое имя пути недопустимо.
  2. Запрос не выполнен: параметр контекста '$ HIDDEN1.EParamList [0] .EParID' не найден в контексте теста

Одна вещь, которую я хочу здесь упомянуть, это то, что мы использовали вызовы JSonвызывать методы контроллера.Мы сделали это, чтобы избежать обратных передач.Но мы не использовали вызовы Json для управления загрузкой.Таким образом, при вызове загрузки, записанном в веб-тесте, я вижу все остальные параметры с пустым значением, переданным методу.

Обычно все наши представления содержат вкладки, например, view1 (view1.aspx) содержит вкладки, представленные пользовательскими элементами управления (.ascx),Вкладка Telerik используется для представления вкладок.Для вызова json отправляются только обязательные параметры для метода, и их также можно увидеть в веб-тестировании.Но всякий раз, когда происходит обратный вызов (например, загрузка), веб-тест показывает все параметры в этом конкретном вызове.

1 Ответ

0 голосов
/ 08 сентября 2010

Трудно сказать, что может быть не так с вашим WebTest, не видя никакого кода.

1.Запрос не выполнен: пустое имя пути недопустимо.

Я не видел этого конкретного сообщения об ошибке раньше, поэтому я могу только догадываться, что оно означает под массажем (поэтому я могу ошибаться),Я бы посоветовал проверить параметры публикации запроса, который вызывает эту ошибку, и проверить свойства узла «Загрузка файла».Возможно, в этом параметре указан пустой путь к файлу.

2.Запрос не выполнен: параметр контекста '$ HIDDEN1.EParamList [0] .EParID' не найден в тестовом контексте

Это довольно распространенное сообщение.Это означает, что параметр контекста, на который ссылается текущий запрос, отсутствует.Это произойдет, если правило извлечения для скрытого поля «1» неверно.Если вы проверите все ответы выполнения, идущие в обратном направлении, вы, вероятно, обнаружите (не могу вспомнить имя сейчас, но я думаю, что оно называется подробностями) не выполненное правило извлечения.Исправление этого правила должно решить вторую проблему.

Я работаю над Руководством по записи и улучшению WebTest , которое может вас заинтересовать.

Спасибо, Мацей

...