Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Подскажите инструменты для проверки писем


(Антон) #1

Всем доброго времени суток.

Столкнулся с такой вот проблемой.

Необходимо проверять получаемую на почтовые ящики gmail, yahoo, hotmai рассылку писем, причем одна "порция" 150-250 штук. Письма с разных сайтов, но в общем с практически эдентичным наполнением. Отличается дизайн и языки этих писем. Плюс существует с десяток типов писем, для которых отличается логика и наполнение.

Письма созданы табличным методом без css разметки, без локаторов типа id, name, class.

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

Нужно проверять логику, проклацивая значимые элементы писем - "кнопочки", ссылки, картинки с ссылками и проверять куда-же мы попали после того как кликнули по этому элементу.

Все-бы хорошо, но как обычно есть "злобные" верстальщики, которые вечно что-то меняют и xPath несколько нестабилен. Привязываться к текстовкам на линках тяжело из-за того, что есть разные языки (хотя если выхода не будет нужно будет сделать эти текстовочки как переменные зависящие от языка).

Есть возможность несколько повлиять на верстальщиков и разработчиков чтобы добавили какие-то метки, но нужно показать какие и доказать что так нужно :)

Какими инструментами вообще эффективнее всего проверять почту?

Сталкивался ли кто с подобными задачами?

Есть ли что посоветовать?

Спасибо за внимание :)


(s.kaliberda) #2

Намного удобней с почтой работать через протокол POP или IMAP, чем работать в веб интерфейсом.

Если вы используете язык java, можно доставать письма с помощью библиотеки javamail.

На форуме уже поднимали тему как ее использовать вот здесь


(Антон) #3

Тут можно выгрести почту, распарсить ее, но проблема то состоит в том как проклацать линки и убедиться что попал туда, куда нужно.


(Mykhailo Poliarush) #4

ну кто тебе мешает распарсить html найти нужную ссылку и открыть ее с помощью webdriver?


(Mykhailo Poliarush) #5

http://www.oracle.com/technetwork/java/javamail/index.html


(Mykhailo Poliarush) #6

http://www.vogella.com/articles/JavaXML/article.html#javaxpath_b


(Антон) #7

То что как раз ссылки то и нужно проверять, а они формируются из кучи переменных и искать именно ссылку нельзя.

Вот поэтому был вопрос о том, какие маячки-локаторы насоветовать верстальщикам.


(Mykhailo Poliarush) #8

ну самый верный и правильный способ  это id.

ведь емейл это тот же html код


(Антон) #9

Вот такая проблема возникла. Верстальщики сделали на важных элементах id и class, но когда письмо приходит на почту то почтовик, в зависимости от того кто он делает следующее

К примеру был id="logo"

gmail просто уничтожает все упоминания о id и class

hotmail добавляет впереди локатора приставку ecx в итоге получаетс я что-то типа id="ecxlogo"

yahoo заменяет id и class на цифренно-буквенную билеберду такого плана id="yui_3_7_2_1_1355838473997_2298"

Кто-нибудь может подсказать как выйти из такой ситуации? Как не дать почтовику изуродовать локатор? Или при использовании javamail такого не происходит?

Верстальщики по этому поводу предложили добавлять в ссылки в письме некие метки. Как выглядит такой подход, не поламает ли он что-либо?


(Mykhailo Poliarush) #10

ну значит надо добавлять какие-то аттрибуты, которые почтовики не меняет

это уже надо исследовать, так просто взять и сказать чтобы будет работать для разных почтовиков тяжело

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


(igorl) #11

Кто-нибудь может подсказать как выйти из такой ситуации? Как не дать почтовику изуродовать локатор? Или при использовании javamail такого не происходит?

Есть предположение, что при получении писем по pop3/imap ничего изменяться не будет.


(Mykhailo Poliarush) #12

да, это может сработать, только надо удостовериться, что ко всем почтовикам можно обратитться через pop3/imap


(Антон) #13

Да действительно gmail и yahoo позволяют общащаться и по pop3 и по imap, а hotmail только по pop3 и да сохраняются айдишники и классы :) осталось поднять забор почты с помощью javamail чтобы удостовериться :)