Получить электронную почту в mailcatcher через cy.request - PullRequest
0 голосов
/ 25 апреля 2019

Я пытаюсь получить электронную почту, перехваченную Mailcatcher в тесте Cypress.Mailcatcher работает на localhost:1080, а мое приложение работает на порту 3000.

Пока я не могу просто использовать cy.visit('localhost:1080), потому что я уже посещаю мое приложение через cy.visit() (второй уникальный домен).Итак, я попробовал это:

cy
.request('http://localhost:1080/')
.its('body') //this gives me only a list of headers

Письмо хранится внутри <tbody></tbody>, но этот запрос выше подталкивает меня к тому, что элемент <tbody> пуст

Я ожидаю получитьtr где хранится электронная почта.Любые предложения, как это сделать?

1 Ответ

0 голосов
/ 25 апреля 2019

Не мое решение, просто позаимствовал его у Google и GitHub Cypress (https://github.com/cypress-io/cypress/issues/418):

Электронная почта выглядит как распространенный сценарий, который требует дополнительного домена. Решение, которое мы выбрали, былоиспользовать https://mailcatcher.me/, чтобы сделать электронную почту доступной в браузере, затем добавить прокси-сервер к webpack-dev-server, чтобы к нему можно было получить доступ на том же хосте, что и веб-приложение. Таким образом, вы можете рассматривать электронную почту как еще одинпосетите страницу и перейдите по ссылке. Если вам нужно подключиться к своему внутреннему серверу, вы можете добавить дополнительный прокси, чтобы сделать его доступным в домене webapp.

...