Согласно Википедии, обработчик платежей (payment processor) — это компания (часто третья сторона), которую продавец назначает для управления транзакциями из различных каналов, таких как кредитные и дебетовые карты.

Среди популярных обработчиков платежей: Payment Gateways, Braintree, Authorize.net, PayPal, Bluepay, Citrus Payments и другие.

Терминология, которая используется в статье:

тестирование 2017

1) Продавец — лицо или компания, которая продает товары или услуги (Amazon, eBay или Flipkart).

2) Кредитная карта — пластиковая карта, с помощью которой можно покупать товары или услуги. На карте присутствует номер (16 цифр), срок действия, голограмма, магнитная полоса, подписное поле и код проверки подлинности карты (CVV).

 

платежные системы - тестирование

тестирование платежных систем

3) Банк-эквайрер — финансовое учреждение, в котором открыт счет продавца и которое позволяет принимать и обрабатывать транзакции в магазине с помощью дебетовых и кредитных карт.

4) Банк-эмитент — подтверждает или отклоняет транзакцию в зависимости от состояния счета владельца карты и передает эту информацию банку-эквайеру.

К примеру, транзакция будет отклонена, если дата истечения срока действия карты неверна, сумма покупки превышает кредитный лимит и пр.

5) Транзакция — процесс, при котором продавец получает средства от покупателя.

6) Авторизация — запрашивается при покупке. Ее проводит банк-эмитент клиента. Это подтверждение того, что карта принадлежит покупателю, платежеспособности, наличия достаточных средств и пр. После этого определенная сумма списывается с баланса карты, но все еще не перечисляется на счет продавца.

7) Продавец собирает данные о платеже и отправляет запрос обработчику платежей. С помощью этих данных инициируется передача средств между карточным счетом покупателя и банковским счетом продавца.

Зачем тестировать платежные шлюзы?

В магазине рассчитываются наличными или картой, POS-терминал подтверждает платеж или отклоняет.

Для онлайн-транзакций требуется аналогичная система.

Клиент ждет, что оплата электронного платежа пройдет без каких-либо заминок. Клиент жмет на кнопку «оплатить сейчас», через несколько секунд появляется уведомление, что платеж прошел или отклонен.

Продавцу нужно проверить, что весь процесс оплаты (транзакция в интернет-магазине, авторизация и пр.) работает должным образом. Если возникают неполадки в каком-либо из составных компонентов, это чревато проблемой для продавца.

Тестирование дает возможность привыкнуть к операционному потоку оператора, и определить, является ли избранный вариант наиболее подходящим для приложения и бизнеса.

Какие виды тестирования нужны

В зависимости от платёжного оператора и продукта/приложения, могут понадобится следующие виды тестов.

Функциональное тестирование. Функциональное тестирование нужно для новых платежных шлюзов, чтобы проверить, что приложение ведет себя должным образом, т.е. обрабатывает заказы, расчеты, добавляет сумму налога.

Интеграционное тестирование. Важно для интеграции с платежными шлюзами. Тестировщикам необходимо проверить, что интеграция веб-сайта/интернет-магазина/приложения налажена с избранным платежным шлюзом. Необходимо проверить весь поток транзакций:

  •  Размещение заказа
  • Проверка поступления средств на счет продавца
  • Проверка отмены транзакции или возврата средств

Тестирование производительности — важно для тестирования веб-сайта/интернет-магазина/приложения. Обработчик платежей не должен выбивать ошибку, когда несколько пользователей пытаются завершить транзакции одновременно.

Тестирование на предмет безопасности — во время транзакции клиент предоставляет персональные данные, номер кредитной карты, CVV-номер и т.д. Поэтому важно удостовериться, что все это передается после шифрования и что канал передачи данных безопасный.

Советы

#1) Попробуйте выяснить, доступна ли бесплатная тестовая среда («песочница») для платежного шлюза. Это предоставит команде тестировщиков дополнительную гибкость, это возможность кастомизации инструмента и тестирования настолько, насколько это требуется.

#2) Убедитесь, что транзакция прошла полную проверку. В рамках разработки проектов обнаруживается множество багов, связанных с данными и передачей данных из приложения на платежный шлюз. Среди дефектов могут встречаться следующие:

  • Информация об имени клиента (покупателя) не передается корректно.
  •  Дата истечения срока действия карты фиксируется некорректно и транзакция отклонена банком-эмитентом.
  • Транзакция дублируется.

#3) Исследуйте ограничения тестовой среды платежного шлюза.

Например, Authorize.net поддерживает одну валюту для одной «песочницы». И если необходимо тестировать несколько валют, понадобится настроить разные тестовые среды.

#4) Если по какой-либо причине во время транзакции платеж не проходит,

он должен увидеть соответствующее сообщение. Не стоит использовать сообщения излишне технического характера, это может запутать клиента. Достаточно простого, незамысловатого текста, вроде «возникли сложности с обработкой транзакции, пожалуйста, позвоните в 1-800-800-8000».

#5) Для верификации на этапе постпродакшн клиенту (владельцу приложения) нужно создавать счет обработчика платежей, ID продавца и т.д.

В зависимости от избранного платежного оператора, на создание счета уходит от двух дней до нескольких недель.

Список по тестированию платежного шлюза и тест-кейсы

Как и любое другое приложение, для тестирования платежного оператора требуется тщательное планирование.

Этот список можно использовать как справочное пособие:

1) Настройка среды тестирования.

2) Сбор номеров кредитных карт, которые будут использоваться для тестирования различных карт.

3) Верификация поведения приложения, когда транзакция успешна.

4) Проверьте, появляется ли сообщение с подтверждением в приложении после верификации транзакции.

5) Получает ли клиент подтверждение транзакции, (например, письмо на почту с подтверждением заказа).

6) Выясните, что происходит, когда платеж не проходит или платежный оператор не отвечает — может быть, произошла какая-то ошибка?

7) Верифицируйте поведение приложения с/без окна-блокировщика в браузере. Это может быть эффективным способом, если это всплывающее окно содержит подтверждающие сообщения.

8) Проверьте все настройки безопасности. Если, например, биллинговая информация клиента не соответствует адресу, предоставленному банку-эмитенту, любые несоответствия приведут к отмене транзакции.

9) Проверьте данные в базе, если у тестировщика есть доступ к базе данных приложения.

10) Проверьте, что произойдет, когда сессия клиента заканчивается.

11) Проверьте консоль во время транзакции и отметьте любые ошибки консоли.

12) Удостоверьтесь в том, что транзакция проходит через защищенный канал. К примеру, страницы оформления заказа могут быть HTTPS, а остальные разделы сайта — HTTP.

13) Проверьте, что валюта платежного оператора установлена корректно. К примеру, если приложение/сайт принадлежит канадскому ритейлеру, в платежном операторе должна быть установлена соответствующая валюта (CAD).

14) Если в приложении реализованы несколько способов оплаты — кредитная карта и PayPal, оба эти способа должны быть протестированы отдельно.

15) Проверьте, что сумма возврата или сумма при отмене транзакции (из админ-части) соответствует сумме возврата. Сумма возврата/отмены не должна превышать сумму транзакции.

Настройка среды тестирования на примере Braintree

1) Перейдите на сайт Braintree.

2) Кликните кнопку «Try the sandbox».

тестирование по

3) Впишите всю нужную информацию и подпишитесь на среду тестирования («песочницу»).

тестирование программного обеспечения

4) На электронную почту (адрес которой был предоставлен во время регистрации) придет письмо с подтверждением.

платежные системы - тестирование

5) Понадобится заполнить информацию о пользователе, затем нужно будет выбрать пароль. Кликните кнопку «Agree and Create your account button».

тестирование программных продуктов

6) Последует перенаправление в админ-панель Braintree.

braintree

7) Отметьте ключи «песочницы», они будут использоваться в вашем приложении для интеграции с Braintree.

braintree тестирование

8) После интеграции среда тестирования будет готова к использованию. Обновить настройки можно в соответствующем меню.

среда тестирования

Популярная опция меню:

план тестирования по

Итог

Обработчик платежей — важный компонент любого e-Commerce-приложения, разработанного для приема платежей от клиентов. Поэтому необходимо тщательно протестировать данный компонент. Любые упущенные сценарии могут повлиять на продажи/транзакции продавца и негативно сказываться на опыте взаимодействия для клиента или покупателя.

Тестировщикам необходимо подготовить среду для тестирования (собирать тестовые данные кредитных карт, коды ответов и пр.) и составить стратегию.