Хобрук: Ваш путь к мастерству в программировании

RobotFramework Открытие ссылок электронной почты с помощью robotframework-imaplibrary2

В настоящее время используется robotframework-imaplibrary2 [расширение robot framework]

Чтобы открыть отправленные электронные письма, я просто хочу открыть ссылку из отправленного электронного письма, используя обычные функции селена фреймворка робота.

Это возможно?

 Email Verification
Open Mailbox    host=imap.hiddeb.com    [email protected]   password=sfefsff
${LATEST} =    Wait For Email    [email protected]   timeout=300
  ${HTML} =    Open Link From Email    ${LATEST}

В библиотеке есть это

${HTML} =   Open Link From Email    ${LATEST}

  • Ваш вопрос не ясен. Что мешает вам использовать обычные селены для открытия электронной почты? И если вы хотите использовать селен, почему вы показываете код, использующий IMAP? 15.01.2020
  • Это библиотечное расширение каркаса роботов, которое позволяет вам открывать серверы imap и открывать тело, получать URL-адрес. По сути, я хочу получить URL-адрес из тела отправленного электронного письма, а затем проанализировать его обратно в браузер. Затем выполните обычную функцию, такую ​​как «Открыть браузер» etc.com ${BROWSER} 15.01.2020
  • Вопрос до сих пор не ясен. Что мешает получить ссылку с тела? Что вы пробовали? Вы пытались написать ключевое слово в python, чтобы взять тело html и проанализировать его? 15.01.2020
  • ${HTML} = Открыть ссылку из электронной почты ${LATEST}, кажется, работает, но я не могу понять, как получить этот URL-адрес, а затем открыть с ним браузер 15.01.2020

Ответы:


1

Глядя на реализацию ключевых слов, Я бы сказал, что это не имеет ничего общего с селеном.

Похоже, вам нужно электронное письмо в формате HTML (не обычный текст). Затем вам нужен индекс этого письма, который в вашем случае хранится в переменной ${LATEST}.

Вызов Open link from Email ${LATEST} использует первую ссылку (это поведение по умолчанию), найденную в этом письме, открывает URL-адрес и получает HTML-контент этого веб-сайта. Кажется, что нет никакого браузера или веб-драйвера.

Однако, если вы хотите открыть ссылку в браузере, я бы попробовал ключевое слово Get Links from Email:

${ALL_LINKS}    Get Links from Email    ${LATEST}
SeleniumLibrary.Go To    ${ALL_LINKS}[0]

Отказ от ответственности: поскольку у меня нет доступного тестового почтового сервера, мое предложение может потребовать корректировок.

15.01.2020
  • ПРИМЕЧАНИЕ: необходимо открыть браузер до Go To. 16.01.2020
  • Новые материалы

    Основы принципов S.O.L.I.D, Javascript, Git и NoSQL
    каковы принципы S.O.L.I.D? Принципы SOLID призваны помочь разработчикам создавать надежные, удобные в сопровождении приложения. мы видим пять ключевых принципов. Принципы SOLID были разработаны..

    Как настроить Selenium в проекте Angular
    Угловой | Селен Как настроить Selenium в проекте Angular Держите свое приложение Angular и тесты Selenium в одной рабочей области и запускайте их с помощью Mocha. В этой статье мы..

    Аргументы прогрессивного улучшения почти всегда упускают суть
    В наши дни в кругах веб-разработчиков много болтают о Progressive Enhancement — PE, но на самом деле почти все аргументы с обеих сторон упускают самую фундаментальную причину, по которой PE..

    Введение в Джанго Фреймворк
    Схема «работать умно, а не усердно» В этой и последующих статьях я познакомлю вас с тем, что такое фреймворк Django и как создать свое первое приложение с помощью простых и понятных шагов, а..

    Настольный ПК как «одно кольцо, чтобы править всеми» домашних компьютеров
    Вид после 9 месяцев использования С настольных компьютеров все началось, но в какой-то момент они стали «серверами», и мы все перешли на ноутбуки. В прошлом году я столкнулся с идеей настольных..

    Расширенные методы безопасности для VueJS: реализация аутентификации без пароля
    Руководство, которое поможет вам создавать безопасные приложения в долгосрочной перспективе Безопасность приложений часто упускается из виду в процессе разработки, потому что основная..

    стройный-i18следующий
    Представляем стройную оболочку для i18next. Эта библиотека, основанная на i18next, заключает экземпляр i18next в хранилище svelte и отслеживает события i18next, такие как languageChanged,..