Size: a a a

QA — Автоматизация

2020 December 22

LY

Lev Yarushin in QA — Автоматизация
Kto?
Всем привет! Есть регистрация на сайт и на почту приходит емей на Gmail. Через Gmail апи удаляю все письма в почте. Но при прогоне теста - через апи получаю свежее письмо и беру ссылку для подтверждения регистрации, но соль в чем что открывается цепочка и берется письмо уже с экспаренной ссылкой и следовательно тест падает - как вот например всегда брать ссылку со свежего письма и может есть возможность чистить цепочку что ли. Спасибо заранее
удаляете через imap?
источник

K

Kto? in QA — Автоматизация
Lev Yarushin
удаляете через imap?
да
store.connect("imap.gmail.com", 993,
источник

AF

Amahl Farouk in QA — Автоматизация
Maks Gramatunov
Подскажите, если получаются такие длинные xpath, по id искать не вариант, он динамический, а других атрибутов нет
(xpath = "//a[@class='udlite-btn udlite-btn-large udlite-btn-ghost udlite-heading-md udlite-btn-icon udlite-btn-icon-large js-header-button header--dropdown-button--1BviY']")
Это норма?
Классов реально многовато. А так, бывали и более длинные и сложные xpath.
источник

LY

Lev Yarushin in QA — Автоматизация
Kto?
да
store.connect("imap.gmail.com", 993,
expunge нужно делать после удаления
источник

LY

Lev Yarushin in QA — Автоматизация
Maks Gramatunov
Подскажите, если получаются такие длинные xpath, по id искать не вариант, он динамический, а других атрибутов нет
(xpath = "//a[@class='udlite-btn udlite-btn-large udlite-btn-ghost udlite-heading-md udlite-btn-icon udlite-btn-icon-large js-header-button header--dropdown-button--1BviY']")
Это норма?
Изучите оси, находите относительно других элементов.
источник

MG

Maks Gramatunov in QA — Автоматизация
Lev Yarushin
Изучите оси, находите относительно других элементов.
Пробовал относительно других, но там такие же классы, теперь я понял, как с помощью contains можно сократить, спасибо, помогло )
источник

LY

Lev Yarushin in QA — Автоматизация
Maks Gramatunov
Пробовал относительно других, но там такие же классы, теперь я понял, как с помощью contains можно сократить, спасибо, помогло )
покажите скрин html-кода, если хотите чтобы вам помогли
источник

K

Kto? in QA — Автоматизация
Lev Yarushin
expunge нужно делать после удаления
Спасибо, разобрался) Не знал за этот метод, запомню)
источник

LY

Lev Yarushin in QA — Автоматизация
У гугла можно ещё через IMAP искать письма при помощи его языка GMail.
Например это найдёт во всех папках сообщения старше 3 дней.  
in:anywhere AND older_than:3d
источник

K

Kto? in QA — Автоматизация
Lev Yarushin
У гугла можно ещё через IMAP искать письма при помощи его языка GMail.
Например это найдёт во всех папках сообщения старше 3 дней.  
in:anywhere AND older_than:3d
Добавил в код:
emailFolder.close(true);
       emailFolder.expunge();
       store.close();
но при запуске - ругнулось: java.lang.IllegalStateException: This operation is not allowed on a closed folder
источник

LY

Lev Yarushin in QA — Автоматизация
Kto?
Добавил в код:
emailFolder.close(true);
       emailFolder.expunge();
       store.close();
но при запуске - ругнулось: java.lang.IllegalStateException: This operation is not allowed on a closed folder
так перед close делайте
источник

sd

sv_ dp in QA — Автоматизация
Добрый вечер!
Подскажите плиз. Тестирую API c RestAssured + junit 4.
Есть 3 запроса и нужно сделать теста (POST =Create, PUT=Update, Delete).

Если делаю раздельными тестами, то нет гарантии порядка тестов, поэтому PUT/Delete могут падать, потому как еще не были созданы ресурсы, чтоб по ID к ним обратится.

Насколько нормально в 1 тесте, делать все три запроса и все три чекать на свой список проверок?

Как бы да, в репорте у нас будет видно что именно и где именно упало, но по факту статистика будет портиться, потому как не 1 тест будет считаться провальным, а все 3 сразу.

Что скажете коллеги?
источник

DS

Dmytro Slobodianiuk in QA — Автоматизация
насколько дорого подготавливать данные перед тестом?
источник

SM

Sewa Makhinya in QA — Автоматизация
Dmytro Slobodianiuk
насколько дорого подготавливать данные перед тестом?
обычно это не "дорого", а "необходимо"
то есть ставим вопрос не "фу, дорого, пропускаем" - а "обо что нам это обойдётся, ибо без него не жить"
источник

sd

sv_ dp in QA — Автоматизация
Dmytro Slobodianiuk
насколько дорого подготавливать данные перед тестом?
независимыми их сделать не получается... есть ряд полей, которые нужно достать из Create респонса, чтоб потом использовать в будущем...
источник

DS

Dmytro Slobodianiuk in QA — Автоматизация
Sewa Makhinya
обычно это не "дорого", а "необходимо"
то есть ставим вопрос не "фу, дорого, пропускаем" - а "обо что нам это обойдётся, ибо без него не жить"
видите, не все так просто
источник

SM

Sewa Makhinya in QA — Автоматизация
sv_ dp
Добрый вечер!
Подскажите плиз. Тестирую API c RestAssured + junit 4.
Есть 3 запроса и нужно сделать теста (POST =Create, PUT=Update, Delete).

Если делаю раздельными тестами, то нет гарантии порядка тестов, поэтому PUT/Delete могут падать, потому как еще не были созданы ресурсы, чтоб по ID к ним обратится.

Насколько нормально в 1 тесте, делать все три запроса и все три чекать на свой список проверок?

Как бы да, в репорте у нас будет видно что именно и где именно упало, но по факту статистика будет портиться, потому как не 1 тест будет считаться провальным, а все 3 сразу.

Что скажете коллеги?
подготовку данных следует вынести в отдельный степ, сделать его независимым (готовить независимые даныне) и выполнять перед каждым тестом
если тесты зависят друг от друга - это плохо
источник

DS

Dmytro Slobodianiuk in QA — Автоматизация
и вообще - подготавливать данные при помощи того же фреймворка, который тестируешь, так себе затея, конечно
источник

K

Kto? in QA — Автоматизация
Lev Yarushin
так перед close делайте
Сделал, не работает все равно, приходят письма в цепочке. Может кто то покажет, как у него рализовано удаление писем и всей цепочки через Gmail Api. был бы очень благодарен
источник

LY

Lev Yarushin in QA — Автоматизация
Kto?
Сделал, не работает все равно, приходят письма в цепочке. Может кто то покажет, как у него рализовано удаление писем и всей цепочки через Gmail Api. был бы очень благодарен
Надо удалять из всей почты, выбирать папку All
источник