Получение сообщений от Exchange 2003 - PullRequest
1 голос
/ 05 октября 2011

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

Я бы хотел (как-то) подключиться к серверу Exchange (2003), используя данную учетную запись пользователя, получить входящие сообщения и убедиться, что ожидаемое сообщение получено.

Есть ограничения для этого сценария:

  1. Эти тесты часто проводятся в лабораторных условиях, без внешнего подключения к Интернету. Это означает, что сервер (exchange) должен находиться в нашем окружении (например, не может использовать Gmail).

  2. EWS и более новые API нельзя использовать, поскольку они поддерживаются в Exchange 2007 и более поздних версиях.

  3. Попробовал несколько упомянутых методов в сети, но безуспешно (например, WebDAV).

Есть ли надежный источник для выполнения этого требования? какую технику вы бы порекомендовали?

Ответы [ 2 ]

1 голос
/ 05 октября 2011

Погашение является одним из вариантов; он использует MAPI напрямую. Outlook не требуется.

При этом WebDAV является допустимым вариантом здесь. Вам нужно выполнить два шага:

  1. Выполните команду SEARCH для рассматриваемого почтового ящика.
  2. Если вам нужна вся почта в формате MIME, введите GET для href, возвращенного в поисковом запросе. Добавьте заголовок «Translate: f» к запросу. Если вы просто хотите просмотреть почту структурированным образом, вместо этого введите PROPFIND на href.

У меня есть библиотека, которая делает все это. Если вы пингуете меня через мой сайт (http://www.infinitec.de),, я могу отправить его вам.

1 голос
/ 05 октября 2011

Вероятно, вы можете использовать библиотеку Redemption .

Библиотека использует Outlook в качестве точки входа в Exchange, что означает, что вам придется установить и настроить Outlook на работающем компьютере.ваши тесты.Я предполагаю, что, поскольку это только для целей тестирования, это приемлемое ограничение.

...