Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Чтение из web.config при выполнении исследований Pex

Автор вопроса: YrlecОтветов: 2

Я только начал использовать Pex для создания параметризованных модульных тестов для своего проекта. Однако, когда я позволяю Pex выполнять свои исследования, мой код дает сбой, потому что он не может прочитать из web.config (точнее, ConfigurationSettings.AppSettings не содержит элементов). Рабочий каталог во время исследований: "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE". Я предполагаю, что это первопричина.

Я знаю, что предположительно правильный способ справиться с этим - создать фиктивные объекты, соответствующие нужным мне значениям. Однако это вынудило бы меня создать тонны фиктивного кода и не принесло бы никакой ощутимой ценности ИМХО, потому что у меня нет проблем с объединением web.config с тестовым проектом.

Как включить чтение из web.config (или app.config) во время выполнения исследований Pex?

visual-studiounit-testingnunitweb-configpex

Ответы

Ответ 1 · рейтинг 3 · FinnNk

Боюсь, вы сами ответили на свой вопрос - вы не сможете напрямую получить доступ к своей базе данных из своего кода, так зачем делать это с вашими конфигурационными файлами? Просто поместите тонкую оболочку вокруг настроек файла конфигурации и заглушите ее в своих тестах. Вам не нужно делать все за один раз, начните с тестируемого фрагмента кода и шаг за шагом перемещайте прямые ссылки за оболочкой. Ощутимая выгода от этого заключается в том, что это упрощает тестирование.

Кроме того, с Pex, если ваш код полностью разрывается между каждым запуском (зависит от вашего кода и тестов, так ли это на самом деле), вы будете каждый раз нажимать на файловую систему, что серьезно повлияет на производительность. .

Ответ 2 · рейтинг 1 · Peli

Разработчики Pex не читают (часто) stackoverflow. Вам лучше задать свой вопрос, связанный с Pex, на форумах по адресу http://social.msdn.microsoft.com/Forums/en/pex/threads

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы