Size: a a a

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

2020 January 22

LY

Lev Yarushin in QA — Автоматизация
Mikhail
Это надо тестить.
Да, но 3ds в этом процессе не участвует, Это на стороне используемого вами сервиса происходит. А он уже вам должен вернуть результат.
источник

M

Mikhail in QA — Автоматизация
Lev Yarushin
Да, но 3ds в этом процессе не участвует, Это на стороне используемого вами сервиса происходит. А он уже вам должен вернуть результат.
Возможно, у нас терминология разная. Стадии платежа. Клиент вводит карту в интерфейсе приложения. Данные карты летят на authorize-эндпоинт платеги вместе с данными платежа. Там они сохраняются в их транзакцию (а мы ведём у себя свою, да же). И показывают интерфейс 3ds клиенту. Мы до тех пор ничего не знаем и у нас транзакция висит в статусе 3drunning.
источник

M

Mikhail in QA — Автоматизация
Дальнейшие шаги по переходу её в done на нашей стороне нужно тестировать. Это я имел в виду.
источник

LY

Lev Yarushin in QA — Автоматизация
Mikhail
Возможно, у нас терминология разная. Стадии платежа. Клиент вводит карту в интерфейсе приложения. Данные карты летят на authorize-эндпоинт платеги вместе с данными платежа. Там они сохраняются в их транзакцию (а мы ведём у себя свою, да же). И показывают интерфейс 3ds клиенту. Мы до тех пор ничего не знаем и у нас транзакция висит в статусе 3drunning.
Всё так, только обычно клиент вводит данные уже на самом сервисе эквайринга, ибо обработка данных карт ещё большие ограничения накладывает на приложение. И, как правило, тестовые карты не требуют дополнительных действий ( вроде 3ds).  Вводя разные карты/суммы можно протестировать разные сценарии, как позитивные так и негативные.  К примеру недостаточно средств на карте и т.п.
источник

M

Mikhail in QA — Автоматизация
Lev Yarushin
Всё так, только обычно клиент вводит данные уже на самом сервисе эквайринга, ибо обработка данных карт ещё большие ограничения накладывает на приложение. И, как правило, тестовые карты не требуют дополнительных действий ( вроде 3ds).  Вводя разные карты/суммы можно протестировать разные сценарии, как позитивные так и негативные.  К примеру недостаточно средств на карте и т.п.
А, ну вот и причина недопонимания. Я говорил о конторах с PCI-DSS Level1, которые сами хранят карточные данные и платежи, и которые на своей стороне принимают данные плательщика. Как мне кажется, автор вопроса имел в виду тоже именно такую ситуацию, судя по его первому сообщению.
источник

M

Mikhail in QA — Автоматизация
А про тестовые карты добавлю, что они бывают как с включенным 3ds, так и без него, эмулируя поведение тарых карт, но, как правило, большие игроки стараются не работать с такими картами, заранее блокируя в настройках эквайеров возможность работы с таими картами. Потому что фрода очень много, а множественные чаржбэки делать совсем не приветствуется со стороны Visa.
источник

V

Vitali in QA — Автоматизация
Николай Кротов
как запустить два контейнера из одного образа и чтобы в каждый можно было запустиnь хромдрайвер?)

просто прописать другие порты не работает
docker run -d -p 4444:4444 -v /dev/shm:/dev/shm selenium/standalone-chrome
docker run -d -p 4445:4445 -v /dev/shm:/dev/shm selenium/standalone-chrome


при запуске хродрайвера ругается:

UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.


хромдрайвер запускается через
d1 = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), options);
п
росто сменой порта на нужный(это java)
Блин я давно уже не делал но на первый взягляд вы запустили образ Стендалона а подключаетесь к Selenium Hub. Подключение к селениум Standalone происходит при инициализации обьекта new ChromeDriver ()
источник

VP

Valery Pavlov in QA — Автоматизация
Mikhail
Это, обычно, POST-запрос, в котором эквайер передает какие-то данные о транзакции. Руками нельзя даже узнать, что там будет.
Вы же на бэке обрабатываете этот запрос, значит формат должен быть известен и подогнать его под свои нужды думаю возможно
Я в тестах у себя успешно эмулирую колбэк от эквайринга тинькова на оплату
источник

OK

Oleksandr Khotemskyi in QA — Автоматизация
Vitali
Блин я давно уже не делал но на первый взягляд вы запустили образ Стендалона а подключаетесь к Selenium Hub. Подключение к селениум Standalone происходит при инициализации обьекта new ChromeDriver ()
standalone и hub это один и тот же jar
источник

V

Vitali in QA — Автоматизация
и что ?
источник

LY

Lev Yarushin in QA — Автоматизация
Mikhail
А, ну вот и причина недопонимания. Я говорил о конторах с PCI-DSS Level1, которые сами хранят карточные данные и платежи, и которые на своей стороне принимают данные плательщика. Как мне кажется, автор вопроса имел в виду тоже именно такую ситуацию, судя по его первому сообщению.
Ну речь шла про worldpay. И насколько мне было известно, никакого 3ds при использовании тестовых карт у них не было.  Поэтому ответы именно в контексте данного сервиса.
источник

V

Vitali in QA — Автоматизация
В одном джаре вы можете запустить ваш селеуним hub  и можете запустить селениум  стэндалон. При этом вызов (подключение клиент джава ) к  селениум (браузеру) будет осуществлятся по разному
источник

V

Vitali in QA — Автоматизация
Это кусок инициализации хром драйвера. И как мы видим он не использует  портб  но испольщует путь к бинарному файлу.. А бинарный файл уже будет говорить с вашим браузером. Если вы  наследуетесь от хром драйвер класса и перепишете порт для нового инстанса то по идее должно работать
источник

IE

Ivan Efimov in QA — Автоматизация
А зачем порт пробер? И так можно получить все открытые порты или записать переменную driver_service_last_port++
источник

V

Vitali in QA — Автоматизация
да порт пробер ищет любой открытый порт
источник

V

Vitali in QA — Автоматизация
Вообщем на первый вгляд лучше не выдумывать велосипед а использовать селениум hub + node в докере.
источник

B

Bola in QA — Автоматизация
Ну тогда лучше взять селеноид
источник

V

Vitali in QA — Автоматизация
Сори Моя Ошибка. Счас нефиг было делать проверил что можно создать сессию используя
источник

V

Vitali in QA — Автоматизация
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),
           DesiredCapabilities.chrome());
источник

V

Vitali in QA — Автоматизация
источник