Вирішив написати про те, як я заавтотестіл отримання і підтвердження пошти за допомогою бібліотеки Java Mail. Напевно багатьом стане в нагоді.
На багатьох сайтах реєстрація відбувається шляхом отримання листа і переходу по активационной посиланням. Цей кейс я і заавтотестіл.
Допомогли мені для цього наступні посилання:
Де я поцупив реалізацію, як взагалі отримувати потрібну мені лист за допомогою javamail, з будь-якого поштовика
Як використовувати JavaMail - де я поцупив реалізацію, як мені розпарсити лист, якщо воно html-е, ну і потім відповідно витягнути мені одне з посилань для підтвердження.
* @param user поштовий логін ([email protected])
* @param password пароль від поштової логіна
* @param sbj заголовок листа, за яким будемо шукати лист
* @return распарсенний текст потрібного листа
public String getNewMailTest (String user, String password, String subjectFind) throws MessagingException, IOException, InterruptedException
String link = null;
Properties props = System.getProperties ();
Session session = Session.getDefaultInstance (props);
Pattern regex = Pattern.compile ( «\\ @ \\ w + \\.»);
Matcher matcher = regex.matcher (user);
host = matcher.group (). replaceAll ( «\\ @», «») .replaceAll ( «\\.», «»);
Store store = session.getStore ( «pop3»);
store.connect (host, 110, user, password);
Folder folder = store.getFolder ( «INBOX»);
Message [] messages = folder.getMessages ();
for (int i = 0; i
// Вибір потрібного листа
System.err .println ( «Повідомлення пропущено, тому що не є активаційним листом .......»);
/ * Парс потрібне мені лист, метод getMessageFullInfo описаний нижче * /
/ * Прибираю за собою видалю потрібне мені лист * /