Использование селена для чтения электронных писем в Gmail - PullRequest
3 голосов
/ 15 ноября 2009

Я использую selenium-rc и пытаюсь нажать на конкретное письмо в gmail, чтобы попасть на страницу электронной почты. В частности: в папке «Входящие» Gmail нажмите на электронное письмо с определенной темой.

Я не могу найти правильный xpath (ни один из тегов в части электронной почты не является ссылкой). Идеи?

Ответы [ 4 ]

4 голосов
/ 16 ноября 2009

Этот XPath должен выполнить трюк:

//div[@class = 'y6']/span[contains(., 'subject_here')]

... при условии , что вы сначала изменили на фрейм canvas_frame.Иначе вряд ли это сработает вообще.Если вы не используете Firebug для проверки HTML-кода, вам действительно следует это выяснить.Кроме того, структура Gmail меняется довольно регулярно, поэтому класс y6 может меняться в любой день.

Я не проверял это, но это может работать для вас:

open http://gmail.com
// do the login stuff, click on login
waitForElementPresent canvas_frame
selectFrame canvas_frame
waitForElementPresent //div[@class = 'y6']/span[contains(., 'subject_here')]
clickAt //div[@class = 'y6']/span[contains(., 'subject_here')] 0,0
// do stuff you care about

Важно: вынужно использовать clickAt, чтобы Gmail осознавал, что вы нажимаете.Это не работает только с простой командой «click».

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

4 голосов
/ 15 ноября 2009

изменить Gmail на основной режим HTML.

0 голосов
/ 07 мая 2013

Я использовал эту команду

clickAt | //table/tbody/tr/td[5]/div[@class='yW'] |

Нажмите на поле ОТ первой / последней / самой верхней почты, чтобы перейти на страницу сведений о почте. // примечание: tr для первой почты, tr [2] для второй и т. д.

0 голосов
/ 15 ноября 2009

Является ли ваше приложение Ruby on Rails случайно? Если это так, то спецификация электронной почты - это отличный способ проверить электронную почту без необходимости возиться с Gmail: http://github.com/bmabey/email-spec

...