Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

Тестирование отправки SMS Python (нужна помощь)

sms
python
Теги: #<Tag:0x00007fedbb136b58> #<Tag:0x00007fedbb136a18>

(Наталья Рощина) #1

Всем привет!

Хочу поинтересоваться, как можно протестить отправку SMS с помощью Python. Возможно, у кого был такой опыт.


(Maxim Andryushchenkov) #2

Вообщем, делал так уже. Есть сайт: тык. Сайтов таких много, можете использовать любой. Берешь парсишь страницу на предмет активности номеров. Если номер активный, скажем до 10 минут последняя смс, то ок - используем его. Постоянный чек нужен потому что номера меняются. Далее пишем обертку с использованием Selenium. Смысл такой: делаешь что-то у себя в приложении для отправки смс, затем в новой вкладке открываешь страницу номера, перекидываешь на нее фокус драйвера, и пишешь метод для получения всех смс и фильтр к нему, для того чтобы выделить только свои смс, потому что помимо ваших там будет еще 100500. Ну и вейтер какой-то надо прикрутить чтобы некоторое время ждать смс. Советую сразу использованные смс складировать куда-либо и проверять что новая не оттуда, ибо часто так бывает что старая смс уже не валидна, но она попадает под ваш временной критерий. И вот вы получили свою валидную смс, закрываете текущую вкладку, фокус драйвера назад на первую вкладку и используете код из смс или что там у вас. Делов на час работы


Сохранение данных сессии и восстановление ее при запуске браузера. Как реализовать?
#3

Сделайте тестовый Gmail account, возьмите реальный телефон с реальным номером и настройте так чтобы смски автоматически с телефона редиректились на почту. А с почты с помощью Gmail rest api вытягивайте уже полученные письма - то бишь смски

Либо же если у вас много тестов проверяющих смс и ваше приложение дёргает какой-то АПИ для отправки смс, просто перехватите исходящий реквест (в джаве есть Browser mob proxy, с python не работал).

А то что АПИ работает корректно можно проверить отдельным тестом.


(Наталья Рощина) #4

@Maxim1 @Andrej_Frolov спасибо за идеи! Проблему решила так: использую валидный телефон с сайта https://www.receive-sms-online.info/, далее с помощью Twilio API проверяю статус отправленного сообщения, если delivered, то ОК, сообщение доставлено.