Test Scenarios
Test Scenarios
Category | № | Test Case | Expected Result |
---|---|---|---|
Validation Tests | 1 | Valid card details | Payment should be processed successfully with a success response from the backend |
Validation Tests | 2 | Invalid card number | Backend should return an error message |
Validation Tests | 3 | Expired card | Backend should return an error message |
Validation Tests | 4 | Invalid CVV | Backend should return an error message |
Validation Tests | 5 | Missing cardholder name | Backend should return an error message |
Validation Tests | 6 | Card data | Backend should return an error message indicating that system could not process request |
Validation Tests | 7 | Api key | Backend should return an error message indicating an error that could not verify account |
Validation Tests | 8 | Terminal isn't attached | Backend should return an error message indicating an error that could not verify account |
Validation Tests | 9 | Amount | 1. Transaction amount should be more than zero 2. Amount request property must be at most two decimal places 3. Processed successfully 4. Only int/float 5. Backend should return an error message indicating that system could not process request 6. min limit 100 |
Validation Tests | 10 | orderDetails | Backend should return an error message |
Validation Tests | 11 | paymentMethod | Backend should return an error message |
Validation Tests | 12 | transactionType | 1. Backend should return an error message indicating that system could not process request 2. transactionType must be -auth -sale -verification |
Validation Tests | 13 | threeDSNotificationUrl | ? |
Transaction Tests | 1 | Successful transaction | Backend should process the transaction and return a success response |
Transaction Tests | 2 | Unsuccessful Transactions | Backend should return an error message indicating insufficient funds |
Transaction Tests | 3 | 3d secure | Error response |
Transaction Tests | 4 | Duplicate transactions | Backend should return an error message indicating a duplicate transaction attempt |
Transaction Tests | 5 | Transaction timeout | Backend should return an error message indicating a transaction timeout |
Transaction Tests | 6 | Successful Cancel transaction | Successful cancel transaction |
Transaction Tests | 7 | Unsuccessful Cancel Transactions | Backend should return an error message |
Transaction Tests | 7 | Otp code | Backend should return an error message |
Transaction Tests | 7 | Check transaction commissions | All commissions are correct. Transaction commissions are different in each merchant. Need to check in DB → merchant_settings table |
Capture Tests | 1 | Successful Capture | Backend should capture the payment successfully and return a success response |
Capture Tests | 2 | Unsuccessful Capture | Backend should return an error message |
Capture Tests | 3 | Capture request timeouts | Backend should return an error message indicating a capture request timeout |
Refund Tests | 1 | Successful Refund | Successful refund transaction |
Refund Tests | 2 | Unsuccessful Refund | Backend should return an error message |
Refund Tests | 3 | Partial refunds | Backend should process the partial refund successfully and return a success response |
Recurrent Transaction | 1 | Successful recurrent transaction | Successful transaction. Response body is same structure as in swagger. Transaction successful create records in transaction_details/transaction_history tables |
Recurrent Transaction | 2 | Invalid tests | Backend should return a validation error message |
Recurrent Transaction | 3 | Transaction with invalid conditions | Error responses |
Save Card | - | Check card saving endpoint | Successful - Backend returns url for FE card saving / Backend should return validation error messages (400/404) |
Тестовые сценарии
Категория | № | Тест-кейс | Ожидаемый результат |
---|---|---|---|
Тесты валидации | 1 | Корректные данные карты | Платеж должен быть обработан успешно с успешным ответом от бэкенда |
Тесты валидации | 2 | Некорректный номер карты | Бэкенд должен вернуть сообщение об ошибке |
Тесты валидации | 3 | Просроченная карта | Бэкенд должен вернуть сообщение об ошибке |
Тесты валидации | 4 | Некорректный CVV | Бэкенд должен вернуть сообщение об ошибке |
Тесты валидации | 5 | Отсутствует имя держателя карты | Бэкенд должен вернуть сообщение об ошибке |
Тесты валидации | 6 | Данные карты | Бэкенд должен вернуть сообщение об ошибке, указывающее, что система не может обработать запрос |
Тесты валидации | 7 | Api ключ | Бэкенд должен вернуть сообщение об ошибке, указывающее на ошибку проверки аккаунта |
Тесты валидации | 8 | Терминал не подключен | Бэкенд должен вернуть сообщение об ошибке, указывающее на ошибку проверки аккаунта |
Тесты валидации | 9 | Сумма | 1. Сумма транзакции должна быть больше нуля 2. Свойство суммы запроса должно иметь максимум два знака после запятой 3. Успешно обработано 4. Только int/float 5. Бэкенд должен вернуть сообщение об ошибке, указывающее, что система не может обработать запрос 6. минимальный лимит 100 |
Тесты валидации | 10 | orderDetails | Бэкенд должен вернуть сообщение об ошибке |
Тесты валидации | 11 | paymentMethod | Бэкенд должен вернуть сообщение об ошибке |
Тесты валидации | 12 | transactionType | 1. Бэкенд должен вернуть сообщение об ошибке, указывающее, что система не может обработать запрос 2. transactionType должен быть -auth -sale -verification |
Тесты валидации | 13 | threeDSNotificationUrl | ? |
Тесты транзакций | 1 | Успешная транзакция | Бэкенд должен обработать транзакцию и вернуть успешный ответ |
Тесты транзакций | 2 | Неуспешные транзакции | Бэкенд должен вернуть сообщение об ошибке, указывающее на недостаток средств |
Тесты транзакций | 3 | 3d secure | Ответ с ошибкой |
Тесты транзакций | 4 | Дублированные транзакции | Бэкенд должен вернуть сообщение об ошибке, указывающее на попытку дублированной транзакции |
Тесты транзакций | 5 | Таймаут транзакции | Бэкенд должен вернуть сообщение об ошибке, указывающее на таймаут транзакции |
Тесты транзакций | 6 | Успешная отмена транзакции | Успешная отмена транзакции |
Тесты транзакций | 7 | Неуспешная отмена транзакций | Бэкенд должен вернуть сообщение об ошибке |
Тесты транзакций | 7 | Otp код | Бэкенд должен вернуть сообщение об ошибке |
Тесты транзакций | 7 | Проверка комиссий транзакции | Все комиссии корректны. Комиссии транзакций различаются для каждого мерчанта. Необходимо проверить в БД → таблица merchant_settings |
Тесты захвата | 1 | Успешный захват | Бэкенд должен успешно захватить платеж и вернуть успешный ответ |
Тесты захвата | 2 | Неуспешный захват | Бэкенд должен вернуть сообщение об ошибке |
Тесты захвата | 3 | Таймауты запроса захвата | Бэкенд должен вернуть сообщение об ошибке, указывающее на таймаут запроса захвата |
Тесты возврата | 1 | Успешный возврат | Успешная транзакция возврата |
Тесты возврата | 2 | Неуспешный возврат | Бэкенд должен вернуть сообщение об ошибке |
Тесты возврата | 3 | Частичные возвраты | Бэкенд должен успешно обработать частичный возврат и вернуть успешный ответ |
Рекуррентная транзакция | 1 | Успешная рекуррентная транзакция | Успешная транзакция. Тело ответа имеет ту же структуру, что и в swagger. Транзакция успешно создает записи в таблицах transaction_details/transaction_history |
Рекуррентная транзакция | 2 | Некорректные тесты | Бэкенд должен вернуть сообщение об ошибке валидации |
Рекуррентная транзакция | 3 | Транзакция с некорректными условиями | Ответы с ошибками |
Сохранение карты | - | Проверка эндпоинта сохранения карты | Успешно - Бэкенд возвращает url для сохранения карты FE / Бэкенд должен вернуть сообщения об ошибках валидации (400/404) |